Datadogで設定したアラートを一時ミュートする方法


定期的なメンテナンスで監視対象になっているサーバーが停止することが予め分かっている場合など、無駄にアラートが飛ぶのを止めておきたいものですよね。

またサーバーに障害が発生し、対処に手こずっているいる横でアラートが出続けるのもあまり気分の良いものではないですよね。

日頃、地道に頑張っているインフラ管理者の気持ちを察して、Datadogではアラートをミュートする方法を2つ準備しています。

  1. ダッシュボードからアラートをミュートする方法
  2. Datadog APIを使ってアラートをミュートする方法 (MUTE/UNMUTE ALL ALERTING)

1. ダッシュボードからアラートをミュートする

例えば、DatadogのダッシュボードからMonitors --> Manage Monitors --> Hostsとクリックしていきます。この段階で、Datadog Agentからのメトリクスデータに関するアラートの一覧が表示されているはずです。ミュートしたいアラートの行に移動すると、右隅の黄色いスピーカーマークが表示されます。このスピーカーマークをクリックし、条件を指定しください。

ミュートしたいサーバーのスコープを別途決めたい場合は、Muted Scopeで、細かく指定してください。(文字入力すると、自動で候補が表示されます)

メニューにあるHost,Metrics,Integration,Process,Networkservice,Custom Checkは、それぞれ異なるタイプのアラーを分類して一覧表示するためのメニューです。(Datadogでは、用途に合わせて6種類のアラートのタイプを持っています。)

なぜHostを選んでいるかというと、ホストの死活監視をする場合には、Datadog Agentから一定の時間メトリクスが受信できなかったことを条件にアラートをするように設定しますすが、その設定ができるのがHostタイプのアラートになるからです。

アラートがミュートされると、Statusの項目にミュートが解除されるまでの残り時間が表示されます。

作業が早く終了した場合など、直ちにミュートを解除したい場合は、ミュート時にクリックしたスピーカーマークを再度クリックするとミュートは解除されます。

以上のように、アラートは、ダッシュボードから簡単にミュート/ミュート解除することができます。

2. APIを使ってアラートをミュートする

http://docs.datadoghq.com/api/#monitor-muteのAPI仕様を読む限りでは、ダッシュボードからの操作の方がミュートの粒度が細かいような気がするのですが、APIからもアラートをミュートすることができます。

書くプログラ言語向けのAPIライブラリーがインストールされていれば、次のようにmute_alerts()関数を実行します。

from dogapi import dog_http_api as api

api.api_key = 'aaaaaaaaaaaaaaaa'
api.application_key = 'bbbbbbbbbbbbbbbbbbbbbbb'

# Mute all alerts
api.mute_alerts()

require 'rubygems'
require 'dogapi'

api_key='aaaaaaaaaaaaaaaa'
app_key='bbbbbbbbbbbbbbbbbbbbbbb'

dog = Dogapi::Client.new(api_key, app_key)

# Mute all alerts
dog.mute_alerts()

同様に、ミュートを解除する場合も、次のようにunmute_alerts()を実行します。

from dogapi import dog_http_api as api

api.api_key = 'aaaaaaaaaaaaaaaa'
api.application_key = 'bbbbbbbbbbbbbbbbbbbbbbb'

# Unmute all alerts
api.unmute_alerts()

require 'rubygems'
require 'dogapi'

api_key='aaaaaaaaaaaaaaaa'
app_key='bbbbbbbbbbbbbbbbbbbbbbb'

dog = Dogapi::Client.new(api_key, app_key)

# Unmute all alerts
dog.unmute_alerts()

これで、安心して定期メンテナンスや障害対処に取り組めるようになった思いませんか。Datadogには詳細な日本語ドキュメントサイトはまだ準備されていませんが、インフラを運用する際に一般的に必要な機能はすでに実装されていることが多いです。もしも、「これって、どのように設定するのだろう....」と思うような時は、是非[email protected]へ問い合わせてみてください。

注) 2014/11/24以前に、Datadogのユーザー登録を済ませている場合は、アラート管理部分は前世代のUIになっています。従って、ダッシュボード上からのMuteの方法が多少異なります。上記に表示した"Monitors"タブを含む新UIへのアップデートに関しては、[email protected]まで"ダッシュボードのアップデート"のリクエスト(日本語可)を申し出てください。

(個人的な見解ですが、ダッシュボードのアップデート依頼は超オススメです。)

追記:

旧UIでは、Metrics --> Manage Monitorsとクリックすると次のようなアラーの一覧ページが表示されます。この段階で、"No Data Alert"を設定してるアラートをミュートします。用途に合わせて、Mute All Monitorsと個別のmuteを使い分けてください。


最後に、もしもこの投稿を読んでDatadogの本当の魅力について知りたいと思うなら、ユーザー登録ページからフリートライアルに申し込んでみてください。