SSL証明書期限を監視するには2段階通知の運用が必要と考えていました。
1つ目の閾値は、例)SSL証明書期限が1ヵ月前になったときに、ご利用者様に更新案内を実施するためのwrning通知。SSL証明書の取得には数日かかったりするものもあるため早めに連絡するのが無難。
2つ目の閾値は、例)案内は出したがお客様から回答をもらえてなかったり、手続きに不備があったり、証明書更新作業を忘れていたり、など、期限が残り5日しかないけど本当に大丈夫なのかというcritical通知。
SyntheticのAPI Testでのアラート通知は1種類しか飛ばすことができません。(調査不足であればすいません)上記のような2段階通知をするためにはMonitorを使えば可能です。今回はそのMonitor設定方法について記載します。細かい設定値の説明は省略してますので、公式ページを参照ください。
私の環境の設定概要
・2段階閾値でのアラート通知(30日と5日)
・Monitor監視は1つで全てのSynthetic監視の通知を一つで集約
- 新規作成
- 左メニューの「Monitors」-「New Monitor」を選択
- 「Metric」を選択
- Choose the detection method
- 「Threshold Alert」を選択 ※閾値変化によるアラート
- Define the metric
- Metric:synthetics.ssl.time_to_expiry
- from:env:ssl
- 私の環境ではSSL証明書監視を「ssl」というタグでグルーピングしているため、対象条件を「ssl」に限定しているという形です。
- excluding:空白
- 除外するものがある場合は必要に応じて入力
- min_by
- server_hostname
- Multi Alert Triggerd a separate alert for each server_hostname reporting your metric
- Set alert conditions
- Trigger when the metric is below the threshold at least once during the last 1 day for any server_hostname
- Alert threshold:7200 ※分単位のため5日
- Warning threshold:43200 ※分単位のため30日
- Alert recovery threshold:空白
- Warning recovery threshold:空白
- Do not require a full window of data for evaluation.
- Do not notify if data is missing.
- [Never]automatically resolve this event from a triggered state.
- Delay evaluation by 0 seconds
- Say what’s happening
- 後述の画像参照
- Tags:空白
- [Never]renotify if the monitor has not been resolved
- Priority:Not Defined
※{{{server_hostname}}}:監視しているhost名を変数として取得し件名に入れます
※{{#is_warning}}{{/is_warning}}:warning閾値の時に入れる本文
※{{#is_warning_recovery}}{{/is_warning_recovery}}:warning閾値回復の時に入れる本文
※@webhook-notification:通知先(6で入力すると自動で挿入される)
- Notify your team
- @webhook-notification
- webhook通知を事前定義してそちらに飛ばすようにしています
- Do not notify alert recipients when this alert is modified
- Do not restrict editing this monitor to its creator or administrators
- @webhook-notification
以上で設定は完了です。これで2段階の閾値で各アラートごとに個別の通知が飛ぶようになります。監視項目毎で個別の通知をしたい場合は少しカスタマイズが必要です。またの機会に記事にさせていただきますm(_ _)m
設定値の意味だいぶ省略してすいません。時間あるときにでも編集して追加しておきます。
コメント