タダです.
はてな社の「Mackerel」を業務利用することになりました.使い始めなこともあり画面から設定をいじっていたのですが, CLI ツールである「mkr」の存在を知ったので,導入と監視設定を取得したりしていきます.
mkr 導入
「mkr」の導入を行ってきます.なお,導入環境は macOS X Catalina
です.
sw_vers ProductName: Mac OS X ProductVersion: 10.15.6 BuildVersion: 19G2021
macOS の場合は brew
で完結します.
インストールコマンド
$ brew tap mackerelio/mackerel-agent $ brew install mkr
インストール完了後,バージョンを確認して 0.40.4
でした.
$ mkr --version mkr version 0.40.4 (rev:ef54761) $ mkr NAME: mkr - A CLI tool for mackerel.io USAGE: mkr [global options] command [command options] [arguments...] VERSION: 0.40.4 (rev:ef54761) AUTHOR: Hatena Co., Ltd. COMMANDS: status Show the host hosts List hosts create Create a new host update Update the host throw Post metric values metrics Fetch metric values fetch Fetch latest metric values retire Retire hosts services List services monitors Manipulate monitors channels List notification channels alerts Retrieve/Close alerts dashboards Generating custom dashboards annotations Manipulate graph annotations org Fetch organization plugin Manage mackerel plugin checks Utility for check plugins wrap Wrap and monitor batch jobs to run with cron etc help, h Shows a list of commands or help for one command GLOBAL OPTIONS: --conf value Config file path (default: "/Users/sadayoshitada/Library/mackerel-agent/mackerel-agent.conf") --apibase value API Base (default: "https://api.mackerelio.com") --help, -h show help --version, -v print the version
現状の監視設定を取得する
それでは,現状の監視設定を取得してみます.「mkr」を使うためにはまず API キーを設定します.API キーは https://mackerel.io/orgs/[オーガナイゼーション名]?tab=apikeys
で確認できます.
$ export MACKEREL_APIKEY=<API_KEY>
設定後,監視設定を取ってくるのは monitors pull
で行います.コマンドを実行すると monitors.json
がコマンド実行のディレクトリに作成されます.
$ mkr monitors pull info Monitor rules are saved to 'monitors.json' (1 rules).
monitors.json
の中身をみると,現状のアラート設定のみが入っている状況でした.このファイルを GitHub で管理すると変更履歴も管理できて良さそうです.
[ { "id": "XXXX", "name": "connectivity", "type": "connectivity" } ]
まとめ
「mkr」の導入と画面で設定した監視設定を取得してきました.運用フローを作っていく中でこのツールを使って変更管理や追加の監視設定を入れたりを検討していきたいと考えてます.今後,Mackerel のナレッジを貯めていきます 🙌