遅くなってすみません。
この記事は、Mackerel Advent Calendar 2016 12日目の記事です。
mackerelを導入してから監視やメトリクスの表示については随分楽になったと思っています。
今回は紹介しませんが、awsやgcpのコスト管理にもmackerelを利用しています。
タイトルにある通り、メンバーにmackerelのメトリクスを毎日見てもらう為に行った事紹介します。
#1 . slack botで通知を行う。
このような通知が平日のみ毎朝slackに流れてきます。
クリスマスバージョンになっていますが季節に合わせた様々なバージョンを用意しております。
こんな可愛くお願いをされればテンションあがってつい確認しちゃいますよね。
文章については弊社のデザイナーの女の子に作成を依頼してます。
#2 . ダッシュボードを作成する。
弊社ではサーバの種類・メトリクスを分類わけして同系統のサーバのメトリクスが一覧で見れるようにダッシュボーを作成しています。
このようなダッシュボードにした理由としては、CloudForecastが個人的にすごく好きで見慣れていた為です。1画面で同系統のメトリクスがみれるのは、個の偏りや異常がみやすいと思っています。
グラフの数が多すぎるとグラフが表示されるまでにすごく時間がかかってしまいますので、サーバが場合やメトリクスが多い場合は適切にわける必要があります。
#3 . ポイントを共有する。
ダッシュボードの作成が完了しても、まだまだサーバが増えてくると見るべきメトリクスが多くでちゃんと見てもらう事は難しいですよね。メンバーに見るべきポイントを共有するのも重要だと思います。今日は僕がメトリクスを見る際に注意しているポイントの一部を紹介します。
- 前日と比べてメトリクスに変化はないか。
- cpu, memory, dick reads/writes に変化はないか。
- アプリケーションへのリクエストが増えてないか。
- アクリケーションのエラーは増えてないか。
- Go GC, Go Heap, Go Memory, Gostats Operationでおかしな所はないか。
- MySQL Table Locks/Slow Queries
- JVM Elasticsearch GC events
- etc...
見るべき項目については人によって違うと思いますので参考程度に思ってください。
ステータスを一時的にStandbyとかMaintenanceにしたままのサーバがあった事もありました。現在はステータスをチェックするスクリプトを作成しており、通知がこない状況のまま放置されるといった事はなくなりました。
#4 . その他(今後試してみようと思っている事)
- botのアイコンを見てもらいたい人に合わせて変えてみる。
- 監視用携帯にかわいい声で電話してお願いをしてみる。
- メトリクスをみて有益な情報を発見してくれた場合はお礼をする。
#5 . まとめ
技術的な話というより、メトリクスをみてもらう為にやっている取り組みについて書かせて頂きました。
というのもせっかくメトリクスをとっているので障害が起きた時しかみないではなく、毎日みてほしいと思うからです。他にも良い方法があれば、ぜひ試してみたいと思いますので教えてください。
毎日楽しくメトリクスがみれるといいですね!!