GCP Cloud Logging でエラーを検知したら Slack に通知する
December 5, 2022
掲題、以前は色々と手間のかかった作業のようなのですが、いまは GCP のダッシュボードからポチポチするだけで完了する簡単なものです。すでに同内容をまとめてくださる方がいますが、自分用の備忘録としてあらためて本記事にまとめておきます。
- Google Cloud ログベースのアラート機能を使って エラーログが出たら Slack に通知する
- https://zenn.dev/team_zenn/articles/cloud-logging-log-alert
クエリを作成して Create alert に進む #
Cloud Logging のダッシュボードを開きます。その後、検知対象としたいログだけを表示するように左下のカラムを操作して絞り込み表示しておきます。このとき、絞り込みに利用されたクエリが上部の Query のところに表示されます。
この状態で Create alert のボタンを押下します。
この画像では、「Cloud Run で発生したもの」かつ「Severity が ERROR」のものでクエリしています。
resource.type="cloud_run_revision"
severity=ERROR
アラートの内容を記載する #
質問されるままにアラートの内容を設定していきます。
最後に「Who should be notified?」という設定項目が出てきます。ここから Slack の通知先を登録します。「MANAGE NOTIFICATION CHANNELS」を選択してページを移動しましょう。
「Notification channels」のページに移動します。通知先の候補の中に Slack があるので、ADD NEW します。
その後作業を進めていくと通知先のチャンネル名を聞かれます。間違えないように入力します。またこのとき「SEND TEST NOTIFICATION」というボタンがあるはずです。これを押下すると入力されているチャンネルに向けて確認用の通知が飛びます。通知が受け取れていることを確認して「SAVE」します。
その後は先ほどまで開いていたアラート内容設定のページに戻りましょう。「Who should be notified?」のところにいま追加した Slack の通知先が表示されるようになっていますので、これを選択して「SAVE」。これで完了です。
アラートが登録されていることを確認する #
GCP の検索バーから「Monitoring」のダッシュボードに移動します。設定されているアラートは以下に表示されています。
Monitoring >> Alerting >> Policies
Slack の通知例 #
1つめのメッセージがテスト通知で送られたメッセージ、2つめのメッセージが実際にエラーを検知したときのメッセージです。