Mackerelで運用するときによく行う情報参照や操作をCLIで楽に行うために、結果をテーブル出力するツールを作りました。
ツール作成にはmackerel-client-go
を利用しています。
- mackerel-client-go
$ make help
build: Build binaries
build-deps: Setup build
deps: Install dependencies
help: Show help
環境変数にMackerelのAPI-KEYをセットする
- export MKRKEY_OrgA=<MACKERL_KEY>
- export MKRKEY_OrgB=<MACKERL_KEY>
mkrKeyOrgA = os.Getenv("MKRKEY_OrgA")
mkrKeyOrgB = os.Getenv("MKRKEY_OrgB")
今回は ORGをorgA
と orgB
としているので、以下のコードを実際のORG名に適宜変更しても使える
OrgA = "orgA"
OrgB = "orgB"
コンパイル済みのコードは ./bin/
配下に配置しています
ダウンロードしたzipファイルを解凍して、 利用するOS名のバイナリファイルを ore-mkr
にリネームし PATHの通った場所に配置してください。
■ CLIツールのバージョン確認
> $ ore-mkr -version
ore-mkr version:
0.0.1
- Mackerel API ドキュメント
■ 一覧
> $ ore-mkr -org=<ORG> -type=host
■ statusを変更する
> $ ore-mkr -org=<ORG> -type=host -<STATUS> target=<HOSTID>
※) STATUS: working standby maintenance poweroff retire
- Mackerel API ドキュメント
■ 一覧
> $ ore-mkr -org=<ORG> -type=monitor
- Mackerel API ドキュメント
- https://mackerel.io/ja/api-docs/entry/users
- mackerel-client-goにAPI実装がなかったのでPR作成してMerged
- ユーザ一覧(GET)
- ユーザ削除(DELETE)
- Blog: https://yhidetoshi.hatenablog.com/entry/2019/07/20/093148
■ 一覧
> $ ore-mkr -org=<ORG> -type=user
■ 削除
> $ ore-mkr -org=<ORG> -type=user -delete -target=<USERID>
- Mackerel API ドキュメント
■ 一覧
> $ ore-mkr -org=<ORG> -type=alert