「Mackerel サーバ監視[実践]入門」を買ってみた - カスタムメトリックプラグイン開発手順メモ
Mackerel サーバ監視[実践]入門:書籍案内|技術評論社を買い、読み始めました。
Mackerelの魅力の一つとして、プラグインを自作して独自の監視項目を追加することがあります。
本書を参考に、カスタムメトリックプラグインを作り、Mackerelの画面に表示させてみました。
以下、その時の手順のメモです。詳細は方法は本書を参考にしてください。
前提条件
今回はMac上でプラグインを開発し、Amazon EC2 Linuxに配置して監視を行います。
予めMackerelのアカウントを用意し、EC2インスタンスにはmackerel-agentをインストールしておきます。
開発言語はGolangになります。
※ mackerel-agentのインスタンス手順は公式ヘルプを参考
エージェントをインストールする - Mackerel ヘルプ
開発手順
1. ソースを作成
本書の「5.2 カスタムメトリックプラグインを作る」を参考に、「mackerel-plugin-uptime」を写経します。
今回はバイナリの名前だけ「go-learning-mackerel-plugin-uptime」というように変更しました。
ソースについては本書や、以下のGithub上のソースを参考にできます。
mackerel-agent-plugins/mackerel-plugin-uptime at master · mackerelio/mackerel-agent-plugins · GitHub
2. EC2用にビルド
ソースをEC2用にビルドします。
$ GOOS=linux go build
3. mackerel-agent-pluginsをインストール
EC2にmackerel-agent-pluginsをインストールします。
$ sudo yum install mackerel-agent-plugins
4. mackerel-agent.confにプラグインを追加
/etc/mackerel-agent/mackerel-agent.confに以下を追加します。
[plugin.metrics.uptime] command = "/home/ec2-user/golang/go-learning-mackerel-plugin-uptime" # 作成したプラグインのパス
5. mackerel-agentを再起動 or EC2を再起動
6. 作成したカステムメトリックを確認
Mackerelの監視画面のカスタムメトリックに、作成したメトリックが表示されていることを確認します。