独自メトリックを送信する(Agent Check) - mass10/datadog.note GitHub Wiki

##はじめに

DATADOG には基本的な計測機能とグラフが最初から備わっているが、やはり独自のメトリックをグラフ化したい。これを実現するために「Agent Check」という仕組みが提供されている。公式ドキュメントに書いてあることだが、ごく簡単に記録しておく。

##準備

下のようにファイルを配置する。.py には HelloCheck(AgentCheck) というクラスと def check(...) というメソッドを書く。

/etc/dd-agent/checks.d/hello.py
/etc/dd-agent/conf.d/hello.yaml

#####hello.py

from checks import AgentCheck
import random

class HelloCheck(AgentCheck):
	def check(self, instance):
		self.gauge('hello.world', random.random() * 1000)

#####hello.yaml

init_config:

instances:
    [{}]

※この yaml にタブ文字は書けないことに注意。タブ文字を検出すると、後述の configtest でコケる。

##テスト

# /etc/init.d/datadog-agent configtest

##始動

datadog-agent を起動しておけば、定期的にこのチェックを実行してくれる。編集した後は再起動が必要なことに注意。

# service datadog-agent start