The Apache Web Server Agent discovers, maps and tracks metrics for business transactions, app services, and backends in your web application by injecting instrumentation into the Apache server at runtime.
About the Apache Web Server Agent
The Apache Agent automatically discovers incoming HTTP requests to Apache Web Server nodes as business transaction entry points. AppDynamics uses URI-based naming for transactions originating at Apache Agent nodes. The agent discovers exit points to Apache modules and resolves them to the downstream tier or backend. See Apache Web Server Backend Detection.
Business transaction naming is limited to URLs or the WEB type. This provides limited options for match and split rules.
The Apache Agent tracks the following metrics for web servers:
- Calls per minute and time spent in the web server tier
- Calls per minute and time spent in Apache module backends
- Number of errors
The agent identifies slow and stalled transactions according to dynamic baselines. When it detects an HTTP response code greater than 400, the agent identifies the transaction as an error transaction.
Transaction snapshots taken on Apache Web Server nodes include the following data:
- URL
- HTTP error codes
- HTTP request data:
- Cookie, including JSESSIONID
- Referer
- X-Forwarded-For
- SM_USER
- Exit calls to Apache modules
Agent Deployment Architecture
The Apache Web Server Agent consists of these components:
- Apache extension
- AppDynamics agent proxy
The agent proxy is a Java process that handles communication between the Apache Web Server Agent and Controller. The proxy transmits the raw performance data from the agent to the Controller, which stores, analyzes, and presents the data.
As a separate process, the agent proxy must be started separately from the monitored web server. You can start the proxy manually or configure it to start automatically by setting AppDynamicsLaunchProxy
in appdynamics_agent.conf
. Whether the proxy is started automatically or manually, the commands that start the agent check whether the proxy is already running and do not attempt to start it again if it is.
Naming Apache Web Server Nodes
Each web server instance maps to a node in the AppDynamics model. When naming Apache Web Server nodes, be sure to use a meaningful name. Some options are:
hostName-appName-nodeName
hostName-
tierName-nodeName
appName-nodeName
tierName-nodeName
- IP address
- fully qualified domain name