APC 技術ブログ

株式会社エーピーコミュニケーションズの技術ブログです。

株式会社 エーピーコミュニケーションズの技術ブログです。

Datadog メトリクスモニターでのグループ化とは?マルチアラートとは?

目次

はじめに

こんにちは!クラウド事業部の野村です(*゚ー゚)

Datadog のメトリクスモニターを設定していると、 Group という用語が良く出てきます。

公式ドキュメントで明確に説明されたページがなく、「何のことなんだ、、」という気持ちで向き合っていたのですが、ようやく理解できてきたので、ブログにまとめようと思います。

こういうところで出てくる言葉、グループ化

マルチアラートを設定したい、、

マルチモニターとは、以下の公式ドキュメント(真ん中より下あたりの、「set-alert-aggregation」という項目)に説明が載っています。一つのモニターで複数のタグごとそれぞれについて監視や通知ができる機能のようなもので、便利そうなのでぜひ使ってみたいのですが、、

docs.datadoghq.com

アラートは、クエリを定義する際に group by の手順で選択したグループに応じて自動的にグループ化されます。クエリにグループ化がない場合、デフォルトで Simple Alert (シンプルアラート) でグループ化されます。クエリがディメンションでグループ化されている場合は、Multi Alert (マルチアラート) でグループ化されます。

グループ化という単語が多用されすぎていて、つまずきました。

ダッシュボードにモニターサマリ―ウィジェットを配置したいが、、

モニターサマリ―ウィジェットは、複数のモニターのステータスをダッシュボードで確認できる下図のようなウィジェットなのですが、、

docs.datadoghq.com

3 つのサマリータイプ Monitor、Group、Combined のいずれかを選択します。

しょっぱなから Group に関する何かを選ばなければならず、つまずきました。

それでは、グループ化とは何ぞや、についてまとめていきます。

グループ化とは、ズバリ

グループ化とは、メトリクスクエリするときに by で指定するタグや属性のことです。

by = グループ化と理解しておけば、だいたい大丈夫!!

まずはメトリクスエクスプローラーでグループ化を追ってみる

例えば、 container.memory.usage メトリクスを視覚化するとこんな感じです。

しかし、このデータ、一つのコンテナだけを表しているわけではないのです。クエリの中に avg by という記載がある通り、いろんなコンテナからとってきた、 container.memory.usage という名前を持つメトリクスが平均されて表現されているグラフなのです。

まずは、 from の欄に container_name を指定してみます。 from はフィルタすることを表します。

container_name:lab-frontend-1 のデータだけにフィルタされました。これが from の効果です。このクエリでメトリクスモニターを構成すると、一つの要素を監視するシンプルアラートになります。

つぎに、 by を使ってグループ化していきます。avg by の後の欄に、 container_nameを指定してみます。

container_name ごとにことなる線が引かれ、それぞれ違う推移をしていることが分かりました。このように、by を使ったグループ化で、まとまって表現されてしまうデータを、タグによって分け、一つの画面で見せることができます。

service でグループ化もしてみましょう。

グラフ的には似た形ですが、サービスごとにグループ化することもできました。このように、任意の分け方でメトリクスを表現することが可能となります。

グループ化を利用したクエリでマルチモニターを設定する

グループ化を理解したところで、マルチモニターを作成していきましょう。

今知りましたが、メトリクスエクスプローラから直接モニター作成画面に行けるようです。

モニターの作成画面に同じクエリを移すことができました。そのまま下の方へスクロールして、、

Configure notifications & automations 配下にある、 Aggregation という設定項目で Multi Alert を選択できるようになっています。byを設定しないと、この項目はシンプルアラートしか選択できなかったのです。

マルチアラートモニターにするとなにがよいか

マルチアラートモニターにすることで、同じ監視を複数ホストや複数コンテナ、複数環境に対して行う場合に、ひとつのモニターで集約して管理することができます。

グループ化されたクエリそれぞれに対してしきい値監視をしてくれ、通知もそれぞれについて実施されます。

また、マルチアラートに利用したディメンション(グループの分け方)は、マルチアラート変数として、通知のタイトルや本文で利用できます。

docs.datadoghq.com

モニターサマリ―ウィジェットのタイプは?

モニターサマリウィジェットのタイプも、マルチアラートの表示の方法を表しているものでした。

ここまで読んできた皆さんなら、公式ドキュメントの説明でも理解できそうですね。なので説明は割愛します。

おわりに

言葉の意味を一つ理解するのにかなり苦労しました。でも今回の「グループ化」のように、ひとつわかると、マルチアラートもモニターサマリ―ウィジェットのタイプも理解できたので、よかったです。

Datadogに触れ始めてから、こういうことの繰り返しですが、一つ一つクリアしていくのは楽しく感じています。みなさん沼にはまりましょう。