Log Analytics とは
Cloud Loggingの機能セットのひとつであり、BigQueryの機能を活用したSQLでのログ分析が可能です。Cloud Logging独自のクエリ言語ではなく、SQLでのログ分析が可能になるのは嬉しい点かと思います。
料金としては、従来のCloud Logginの料金体系が適用され、ログ分析ページから実行可能なSQLのクエリ料金は無料となっております。
※ ログバケットと BigQuery をリンクさせ、BigQuery 側から SQL を実行した際は BigQuery の課金対象となる点は注意
2022年12月時点ではプレビューリリースとなっており、料金や制限事項など今後変更の可能性もありますのでご利用の際はこちらをご参照ください。
試してみた
1.ログバケットの作成
Log Analytics が有効なログバケットを用意する必要があるため、今回はログバケットの作成から実施します。
- ロギング > ログストレージ をクリック
- ログバケットを作成 をクリック
- [名前] に任意の名前を入力
- [Upgrade to use Log Analytics] にチェック
- [ログバケットのリージョンを選択] で任意のリージョンを選択
※2022年12月時点では、Log Analytics を利用する場合に選択できるリージョンは eu / global / us の3つだけでした - [NEXT] をクリック
- 保持期間の設定はプレビュー時点では期間変更が不可だったため、変更せずに [バケットを作成] をクリック
- ログバケットの作成が完了し、[Log Analytics を使用可能] がグリーンチェックとなっていることを確認
2. ログ ルーティング シンクの作成
手順1で作成したログバケットにログを格納するために、ログルーターシンクを作成します。
- ロギング > ログルーター を選択し、[シンクの作成] をクリック
- [シンク名] に任意の名前を入力し、[次へ] をクリック
- [シンクサービスの選択] でCloud Logging バケットを選択
- [ログバケットの選択] で手順1で作成したログバケットを指定し、[次へ]をクリック
- [包含フィルタの作成] にログバケットに格納したいログの条件を記載し、[シンクを作成] をクリック
※本記事の例では監査ログ関連を条件として指定しています
- 作成完了を確認
3. Log Analytics からクエリ実行
これまでの手順により、手順1で作成したログバケットにログが蓄積される状態となったので、Log Analytics からクエリを発行してみます。
- ロギング > Log Analytics を選択し、クエリ実行画面に遷移
- クエリ欄にSQL文を記載し、[クエリ] 実行をクリック
- 実行結果を確認
さいごに
BigQuery にログをエクスポートすることなく、Cloud Logging 内でお手軽に SQL でログ分析ができる点はとても良いと思いました。( Cloud Logging 内からのクエリ実行が無料な点も嬉しいポイント)
既存のバケットにも設定可能で導入のハードルは高くないかと思いますので、気になった方はぜひお試しください。