This check monitors the uptime, status, and number of processes running under supervisord.
The Supervisor check is included in the Datadog Agent package, so you don’t need to install anything else on servers where Supervisor is running.
The Agent can collect data from Supervisor via HTTP server or UNIX socket. The Agent collects the same data no matter which collection method you configure.
Add a block like this to supervisor’s main configuration file (e.g.
[inet_http_server] port=localhost:9001 username=user # optional password=pass # optional
Add blocks like these to
/etc/supervisor.conf (if they’re not already there):
[supervisorctl] serverurl=unix:///var/run//supervisor.sock [unix_http_server] file=/var/run/supervisor.sock chmod=777
If supervisor is running as root, make sure
chmod is set so that non-root users (i.e. dd-agent) can read the socket.
supervisord.d/conf.yaml file in the
conf.d/ folder at the root of your Agent’s configuration directory. See the sample supervisord.d/conf.yaml for all available configuration options:
init_config: instances: - name: supervisord0 # used to tag service checks and metrics, i.e. supervisor_server:supervisord0 host: localhost port: 9001 # To collect from the socket instead # - name: supervisord0 # host: http://127.0.0.1 # socket: unix:///var/run//supervisor.sock
proc_regex options to list processes you want the Agent to collect metrics on and create service checks for. If you don’t provide either option, the Agent tracks all child processes of supervisord. If you provide both options, the Agent tracks processes from both lists (i.e. the two options are not mutually exclusive).
name(Required) - An arbitrary name to identify the supervisord server.
host(Optional) - Defaults to localhost. The host where supervisord server is running.
port(Optional) - Defaults to 9001. The port number.
user(Optional) - Username
pass(Optional) - Password
proc_names(Optional) - Dictionary of process names to monitor
server_check(Optional) - Defaults to true. Service check for connection to supervisord server.
socket(Optional) - If using supervisorctl to communicate with supervisor, a socket is needed.
See the example check configuration for comprehensive descriptions of other check options.
Restart the Agent to start sending Supervisor metrics to Datadog.
Run the Agent’s
status subcommand and look for
supervisord under the Checks section.
|The number of supervisord monitored processes
shown as process
|The process uptime
shown as second
The Supervisord check does not include any events at this time.
Returns CRITICAL if the Agent cannot connect to the HTTP server or UNIX socket you configured, otherwise OK.
The Agent submits this service check for all child processes of supervisord (if neither
proc_regex is configured) OR a set of child processes (those configured in
proc_regex), tagging each service check with
This table shows the
supervisord.process.status that results from each supervisord status:
Need help? Contact Datadog Support.
Mistake in the docs? Feel free to contribute!