Supervisord

Supported OS Linux Windows

Integrationv2.3.0

Supervisor イベント

概要

このチェックは、Supervisor で実行中のプロセスのアップタイム、ステータス、数を監視します。

セットアップ

インストール

Supervisor チェックは Datadog Agent パッケージに含まれています。Supervisor が実行されているサーバーに追加でインストールする必要はありません。

コンフィギュレーション

supervisord の準備

Agent は、HTTP サーバーまたは UNIX ソケットを介して、Supervisor からデータを収集できます。Agent は、構成された収集方法に関係なく、同じデータを収集します。

HTTP サーバー

以下のブロックを Supervisor のメインコンフィギュレーションファイル (/etc/supervisor.conf) に追加します。

[inet_http_server]
port=localhost:9001
;username=user  # 任意
;password=pass  # 任意
UNIX ソケット

以下のようなブロックを /etc/supervisor.conf に追加します (まだない場合)。

[supervisorctl]
serverurl=unix:///var/run/supervisor.sock

[unix_http_server]
file=/var/run/supervisor.sock
chmod=777
chown=nobody:nogroup
;username=user  # 任意
;password=pass  # 任意

Supervisor がルートとして実行されている場合は、非ルートユーザー (dd-agent など) がソケットを読み取れるように、必ず chmod または chown を設定します。


supervisord を再度読み込みます。

ホスト

ホストで実行中の Agent に対してこのチェックを構成するには:

Agent の構成ディレクトリのルートにある conf.d/ フォルダーの supervisord.d/conf.yaml ファイルを編集します。使用可能なすべての構成オプションの詳細については、サンプル supervisord.d/conf.yaml を参照してください。

init_config:

instances:
  ## サービスチェックとメトリクスをタグ付けするために使用 (supervisor_server:supervisord0 など)
  - name: supervisord0
    host: localhost
    port: 9001
  ## 代わりにソケットから収集
  # - name: supervisord0
  #   socket: unix:///var/run/supervisor.sock

proc_names オプションや proc_regex オプションを使用して、Agent がメトリクスを収集してサービスチェックを作成する対象プロセスのリストを作成します。どちらのオプションも指定しなかった場合、Agent は Supervisor の すべて の子プロセスを追跡します。両方のオプションを指定した場合、Agent は両方のリストのプロセスを追跡します。つまり 2 つのオプションは相互排他ではありません。

他のチェックオプションの詳細については、チェック構成の例を参照してください。

Agent を再起動すると、Datadog への Supervisor メトリクスの送信が開始されます。

コンテナ化

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

パラメーター
<インテグレーション名>supervisord
<初期コンフィギュレーション>空白または {}
<インスタンスコンフィギュレーション>{"name":"<SUPERVISORD_SERVER_NAME>", "host":"%%host%%", "port":"9001", "user":"<USERNAME>", "pass":"<PASSWORD>"}

ログの収集

  1. Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml でこれを有効にする必要があります。

    logs_enabled: true
    
  2. Supervisord ログの収集を開始するには、次のコンフィギュレーションブロックを supervisord.d/conf.yaml ファイルに追加します。

    logs:
      - type: file
        path: /path/to/my/directory/file.log
        source: supervisord
    

    path のパラメーター値を変更し、環境に合わせて構成してください。 使用可能なすべてのコンフィギュレーションオプションについては、サンプル supervisord.d/conf.yaml を参照してください。

  3. Agent を再起動します

検証

Agent の status サブコマンドを実行し、Checks セクションで supervisord を探します。

収集データ

メトリクス

supervisord.process.count
(gauge)
The number of supervisord monitored processes
Shown as process
supervisord.process.uptime
(gauge)
The process uptime
Shown as second

イベント

Supervisor チェックには、イベントは含まれません。

サービスのチェック

supervisord.can_connect
Returns CRITICAL if the Agent check is unable to connect to the supervisor daemon. Returns OK otherwise.
Statuses: ok, critical

supervisord.process.status
Returns CRITICAL if the process is not running or stopping, UNKNOWN if starting or unknown, OK otherwise.
Statuses: ok, critical, unknown

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。

その他の参考資料