概要
このチェックは、Supervisor で実行中のプロセスのアップタイム、ステータス、数を監視します。
セットアップ
Installation
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 メトリクスの送信が開始されます。
コンテナ化
コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。
パラメーター | 値 |
---|
<INTEGRATION_NAME> | supervisord |
<INIT_CONFIG> | 空白または {} |
<INSTANCE_CONFIG> | {"name":"<SUPERVISORD_SERVER_NAME>", "host":"%%host%%", "port":"9001", "username":"<USERNAME>", "password":"<PASSWORD>"} |
ログ収集
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
でこれを有効にする必要があります。
Supervisord ログの収集を開始するには、次のコンフィギュレーションブロックを supervisord.d/conf.yaml
ファイルに追加します。
logs:
- type: file
path: /path/to/my/directory/file.log
source: supervisord
path
のパラメーター値を変更し、環境に合わせて構成してください。
使用可能なすべてのコンフィギュレーションオプションについては、サンプル supervisord.d/conf.yaml を参照してください。
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 のサポートチームまでお問合せください。
その他の参考資料