先日届いたRaspberryPiだけど、昨日WiFiのIPアドレス設定まで完了したので、今日からはSSHで接続ができるようになった。
色々やるのに、Slackへの通知だったり、Mackerelへのグラフ表示は必須かなと思い、RaspberryPiへMackerel-agentをインストールすることにした。
RaspberryPiはARMのCPUなので、そのままMackerelのヘルプに書いてある通りにインストールしても動かない。
実行ファイルを変えてやるだけで動くらしく、手順については下記サイトを参考にさせてもらった。
[blogcard url=http://www.atware.co.jp/blog/2015/7/15/mackerel-raspberry-pi]
実際に実行するコマンドは下記でいける。
[code lang=”bash”]
$ curl -LO https://mackerel.io/file/agent/deb/mackerel-agent_latest.all.deb
$ sudo dpkg -i mackerel-agent_latest.all.deb
$ curl -LO https://github.com/mackerelio/mackerel-agent/releases/download/v0.17.1/mackerel-agent_linux_arm.tar.gz
$ tar xfvz mackerel-agent_linux_arm.tar.gz
$ sudo mv mackerel-agent_linux_arm/mackerel-agent /usr/bin/
$ sudo vim /etc/mackerel-agent/mackere-agent.conf
apikey = “<YOUR_API_KEY>”
※apikeyはMackerelのオーガニゼーションから確認できる。
$ sudo /etc/init.d/mackerel-agent start
[/code]
これで、標準監視はできるようなったと思う。
これだけだとつまらないので、CPUの温度とかカスタムメトリックで取れるようにしたいなと思い、雑に下記のようなスクリプトを作った。
[code lang=”bash”]
#!/bin/bash
name=“procs.count.measure_temp”
monitor_time=`date +%s`
count=`vcgencmd measure_temp | awk -F"=" ‘{print $2}’ | sed “s/’C//g” `
echo -e “${name}\t${count}\t${monitor_time}”
[/code]
Mackerel的にはタブ区切りで、上記情報が得られれば良いらしい。細かい仕様についてはMackerelのサイトで確認してほしい。
[code]
[plugin.metrics.measure_temp]
command = “/usr/local/bin/measure_temp.sh”
[/code]
こんな感じで、Mackerelのconfに書いてあげて、agentをrestartしてあげればOK。
こんな感じでメトリクスが取れるようになった。
負荷かけてるわけではないので、54℃ちょいで推移していたけど、試しにddしたら、温度が1℃あがった笑
これからセンサーとか買って、色々試していきたい。