ログベースのアラートがGAになっていました

2022.09.02

はじめに

データアナリティクス事業本部のkobayashiです。

GoogleCloudのサービスを使って構築を行っている際に様々なログをCloud Loggingに貯めることができます。そこで溜まったログを元にしてにエラー通知などを行いたいという場面があるかと思いますがその様な際に使える機能「ログベースのアラート機能」がCloud LoggingでGAになりましたので設定方法をまとめます。

ログを元にして通知設定について

「ログベースのアラート機能」は昨年の7月にプレビュー版がリリースされていました(ログベースのアラート機能がプレビュー版で利用可能に | Google Cloud Blog )。機能としては問題なく使えていたのですがプレビュー版と言うことで本番環境に導入するには「(ログベースの指標 )を作成してそれを元に通知をする方法を採用していました。「ログベースの指標」では一定期間に発生したログが閾値に達したら通知するという仕組みのため若干タイムラグが生じていましたが「ログベースのアラート機能」では監視対象のログが記録されたら即時に通知が行なえます。

その「ログベースのアラート機能」が正式にGAされたので今後ログをもとにした通知はこちらの機能を使っていくことになります。

ただある一定期間に特定のログが一定数記録されたら通知するといった使い方を行う場合はこれまで同様に「ログベースの指標」を使った通知を使いますのでそこで使い分けをすることになります。

ログベースのアラート機能の設定

ログベースのアラート機能の設定はCloud Loggingの機能なのでCloud Loggingのコンソールで設定を行います。設定を行う内容としては以下の通りになります。

  1. ロギングのコンソールの「ログ エクスプローラ」のクエリで通知を行いたいログパターンを入力する。
  2. クエリ結果を確認してアラートを作成する

これは公式ドキュメントにも設定方法の記載がありますので詳しくはそちらをご確認ください(ログベースのアラートの管理  |  Cloud Logging  |  Google Cloud )。

手順1)Cloudコンソールでロギング > ログ エクスプローラに進む。

手順2)クエリペインを開いて通知を行いたいログを表示するクエリを入力する。

手順3)クエリを実行を押下してクエリ結果が想定のものかを確認する。

手順4)アラートを作成を押下してログベースのアラートポリシーの作成画面を開く。

手順5)Alert detailsの項目でポリシー名、説明を入力し次へを押下する。

手順6)Choose logs to include in the alertにクエリが表示されるので確認し次へを押下する。

手順7)Set notification frequency and autoclose durationで通知の間隔とインシデントのクローズ時間を入力し、次へを押下する。

手順8)Who should be notified?Notification Channelsにて通知先を選択し、SAVEを押下してポリシーを作成する。

通知先が未登録の場合は通知チャンネルを管理から通知先を登録します。

これでログベースのアラートの設定は完了です。アラートの確認や内容の修正はCloud Monitoring > アラート > Policiesから操作できます。

通知内容の確認

では実際にエラーを発生させて通知の内容を確認してみます。

「ログベースのアラート機能」でポリシーを設定している状態でログ検知に引っかかると「通知チャンネルへの通知」と「アラートのインシデントの作成」が行われるのでこの2つを確認します。

今回はEmail通知を通知チャンネルに登録したので登録したメールアドレスに以下のような通知が届きます。

メール中のVIEW INCIDENTをクリックすると「ログベースのアラート機能」で引っかかった詳細内容が表示されます。

またCloud Monitoring > アラートを見るとインシデントが作成されています。

まとめ

GAされた「ログベースのアラート機能」を設定してみました。これまではログ内容からアラートを飛ばすには「ログベースの指標」を作成してから一定期間に発生したログが閾値に達したら通知するという仕組みを使う必要がありました。今回正式に「ログベースのアラート機能」がGAされたので今後ログを元にした通知機能は基本的にはこちらを使用すれば特に問題ないかと思います。

最後まで読んで頂いてありがとうございました。