The Service Map for APM is here!

Apache

Agent Check Agent Check

Supported OS: Linux Mac OS Windows

Apache Dashboard

Overview

The Apache check tracks requests per second, bytes served, number of worker threads, service uptime, and more.

Setup

Installation

The Apache check is packaged with the Agent. To start gathering your Apache metrics and logs, you need to:

  1. Install the Agent on your Apache servers.

  2. Install mod_status on your Apache servers and enable ExtendedStatus.

Configuration

  1. Edit the apache.d/conf.yaml file in the conf.d/ folder at the root of your Agent’s configuration directory to start collecting your Apache metrics and logs. See the sample apache.d/conf.yaml for all available configuration options.

  2. Restart the Agent

Metric Collection

  1. Add this configuration block to your apache.d/conf.yaml file to start gathering your Apache Metrics:

    init_config:
    
    instances:
        apache_status_url: http://example.com/server-status?auto
    #   apache_user: example_user # if apache_status_url needs HTTP basic auth
    #   apache_password: example_password
    #   disable_ssl_validation: true # if you need to disable SSL cert validation, i.e. for self-signed certs

    Change the apache_status_url parameter value and configure it for your environment. See the sample apache.d/conf.yaml for all available configuration options.

  2. Restart the Agent.

Log Collection

Available for Agent >6.0

  1. Collecting logs is disabled by default in the Datadog Agent, you need to enable it in datadog.yaml:

    logs_enabled: true
  2. Add this configuration block to your apache.yaml file to start collecting your Apache Logs:

      logs:
          - type: file
            path: /var/log/apache2/access.log
            source: apache
            sourcecategory: http_web_access
            service: apache
    
          - type: file
            path: /var/log/apache2/error.log
            source: apache
            sourcecategory: http_web_access
            service: apache

    Change the path and service parameter values and configure them for your environment. See the sample apache.d/conf.yaml for all available configuration options.

  3. Restart the Agent.

Learn more about log collection in the log documentation

Validation

Run the Agent’s status subcommand and look for apache under the Checks section.

Data Collected

Metrics

apache.conns_total
(gauge)
The total number of connections performed.
shown as connection
apache.conns_async_writing
(gauge)
The number of asynchronous writes connections.
shown as connection
apache.conns_async_keep_alive
(gauge)
The number of asynchronous keep alive connections.
shown as connection
apache.conns_async_closing
(gauge)
The number of asynchronous closing connections.
shown as connection
apache.net.bytes
(gauge)
The total number of bytes served.
shown as byte
apache.net.bytes_per_s
(gauge)
The number of bytes served per second.
shown as byte
apache.net.hits
(gauge)
The total number of requests performed.
shown as request
apache.net.request_per_s
(gauge)
The number of requests performed per second.
shown as request
apache.performance.cpu_load
(gauge)
The percent of CPU used.
shown as percent
apache.performance.busy_workers
(gauge)
The number of workers serving requests.
shown as thread
apache.performance.idle_workers
(gauge)
The number of idle workers.
shown as thread
apache.performance.uptime
(gauge)
The amount of time the server has been running.
shown as second

Events

The Apache check does not include any events at this time.

Service Checks

apache.can_connect:

Returns CRITICAL if the Agent cannot connect to the configured apache_status_url, otherwise OK.

Troubleshooting

Further Reading


Mistake in the docs? Feel free to contribute!