Datadog基本設定メモ(CentOSサーバ)
よく使う設定をまとめておく
Datadogエージェントの設定
対象サーバ:CentOS7
エージェント:datadog-agent v6
目次
- プロセス監視
- Datadogエージェントが正しく動作しているか
- 独自アプリケーションのログを記録したい
プロセス監視
プロセスのCPU負荷/メモリ負荷のモニタリング、死活監視をしたい。
▼[datadog.yaml]ファイルを編集する。
######################################
## Process Collection Configuration ##
######################################
process_config:
# "false" コンテナ情報のみ "true" コンテナとプロセス "disabled" プロセス監視を無効化
enabled: "true"
# 計測間隔(秒)
intervals:
process: 60
# ログの文字列をマスクしたい場合(オプション)
custom_sensitive_words:
- 'password'
▼[Datadog]→[Infrastructure]→[Processes]の画面
▼例えば[monit]が稼働していることを監視する。[Datadog]→[Monitors]→[New Monitor]
▼[monit]の監視がスタートした。[Datadog]→[Monitors]→[Manage Monitors]
▼[monit]を5分以上止めてみる($ systemctrl stop monit)。アラート通知のメールが届きました。
▼ログに機密情報が含まれる場合はマスクすることもできる(例 "vi test.txt password 12345" の場合)。
サーバーを監視するとき、どのチェックが有効になっているのか確認したいとき。
コマンド[datadog-agent status]を実行すると各チェック(httpとかapacheとかメトリックを収集するモジュール)の何を有効にしているかを表示してくれる。
- どのチェックが有効になっているか
- 各チェックが正常(OK)に動いているか
- 各チェックがどのコンフィグを有効にしているのか
なども確認することもできる。このサンプルの場合、ログファイルを読み込めない、それ以外はOKとなっている。
$ sudo datadog-agent status
Getting the status from the agent.
===============
Agent (v6.15.1)
===============
<中略>
=========
Collector
=========
Running Checks
==============
No checks have run yet ← このあたりデバッグ用に大事
========
JMXFetch
========
Initialized checks
==================
no checks ← このあたりデバッグ用に大事
Failed checks
=============
no checks ← このあたりデバッグ用に大事
Hostnames
=========
hostname: sl01.kano.local
=========
Collector
=========
Running Checks
==============
apache (1.8.0)
--------------
Instance ID: apache:345000000000055d4de [OK] ← このあたりデバッグ用に大事
Configuration Source: file:/etc/datadog-agent/conf.d/apache.d/conf.yaml
<以後同様に中略>
cpu
---
Instance ID: cpu [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/cpu.d/conf.yaml.default
disk (2.5.1)
------------
Instance ID: disk:e5d00000024336f [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/disk.d/conf.yaml.default
http_check (4.3.1)
------------------
Instance ID: http_check:Kano_Azure_WebApp-Linux:931000003809 [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/http_check.yaml
Instance ID: http_check:Kano_Azure_WebApp-Win:cd0000006f66f0 [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/http_check.yaml
Instance ID: http_check:Kano_SL01_searchlocation:8fb000097d6 [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/http_check.yaml
kano (0.0.2)
------------
Instance ID: kano:kano-script:1fa43400000dad [OK]
Configuration Source: file:/etc/datadog-agent/conf.d/kano.yaml
==========
Logs Agent
==========
system-probe
------------
Type: file
Path: /var/log/datadog/system-probe.log
Status: OK
Inputs: /var/log/datadog/system-probe.log
apache
------
Type: file
Path: /var/log/httpd/error_log
Status: OK
Inputs: /var/log/httpd/error_log
Type: file
Path: /var/log/httpd/access.log
Status: Error: file /var/log/httpd/access.log does not exist
kano
----
Type: file
Path: /home/user/ping.log
Status: Error: file /home/user/ping.log does not exist ← このあたりデバッグ用に大事
独自アプリケーションのログを記録したい
syslogとかjournalとかログの大量保管はDatadogの課金増加になるので、独自アプリのログだけ記録することもできる。例えば、独自アプリ(ping heat run)が出力したログファイル[ping.log]をDatadogでモニタリングする場合、コンフィグ[custom_log_collection.yaml]にログファイルを書きます。agentを再起動して、check custom_log_collectionで動作確認したらdatadogメニュー[logs]で可視化されたデータを見ます。
logs:
- type: file
path: /home/user/ping.log
source: customelog
service: pingheatrun
トラブルシューティング
datadogエージェントがログを読む権限がない時は、例えばコマンド[sudo datadog-agent status]を実行した時に、"ファイル does not exist"のエラーが表示されます。ファイルでは無くフォルダに実行権限が必要なようです。下記例では、コマンド[chmod 755 user]を実行します。
$ sudo datadog-agent status
custom_log_collection
---------------------
Type: file
Path: /home/user/ping.log
Status: Error: file /home/user/ping.log does not exist ← このエラーが出た時
$ cd /home
$ chmod 755 user
$ ls -la
drwxr-xr-x 39 user user 4096 Jan 19 10:42 user
$ sudo datadog-agent status
custom_log_collection
---------------------
Type: file
Path: /home/user/ping.log
Status: OK
Inputs: /home/user/ping.log
Datadog関連記事
Author And Source
この問題について(Datadog基本設定メモ(CentOSサーバ)), 我々は、より多くの情報をここで見つけました https://qiita.com/1Kano/items/6851fbe099f9be3fbe14著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .