【初心者向け】Azure Log Analyticsワークスペースをざっくり理解する
この記事の内容
- Azure Log Analyticsワークスペースは、Azureサービスやオンプレミスからログを一元管理・分析するための基盤サービスです
- KQL(Kusto Query Language)を使った高度な検索・集計・可視化が可能です
- データ収集ルール(DCR)を利用することで、仮想マシンへのエージェント展開を自動化できます
- 診断設定を使い、各Azureリソースのログをワークスペースへ集約できます
- VM Insightsなどのダッシュボードで、初心者でも手軽にログを可視化できます
Log Analyticsワークスペースとは
Azure Log Analyticsは、Azure Monitorの一部として提供されているサービスです。仮想マシン、ストレージ、App ServiceなどさまざまなAzureサービスや外部システムから生成されたログを、一元的に収集・蓄積・管理・分析するための基盤となっています。
ログを保存するだけでなく、KQL(Kusto Query Language)を用いた強力な検索・分析ができる点が大きな特徴です。また、Azure Sentinelなど他のAzureサービスの基盤としても広く活用されています。
なお、Azure Monitorをまだご覧になっていない方は、先にそちらの解説も参照されることをおすすめします。
ワークスペースの仕組み
ログの集約と保存
各サービスや仮想マシンから送られてきたログは、ワークスペース内の「テーブル」に格納されます。テーブル構造は柔軟で、必要に応じて新しいテーブルを作成したり、既存のものを拡張したりすることができます。複数のテーブルをまたいだクエリも可能です。
ログの可視化・分析
KQLを使うことで、強力な検索・集計・可視化が可能です。複雑な条件でデータを抽出したり、グラフや表にまとめることもできます。サービスごとに診断設定を行い、どのログをどこに送るかも柔軟に調整できます。
多様なデータソース
Azure上のサービスだけでなく、オンプレミスのサーバーや他クラウド(例:AWS上のVM)からもログを収集できます。ログを蓄積するだけでなく、リアルタイム検知やアラート発動の基盤としても機能します。
ワークスペースの作成と運用ポイント
作成手順
- Azure Portalで「ログアナリティクスワークスペース」を検索し、新規作成を選択します
- サブスクリプション、リソースグループ、名前、リージョンを設定します
- 必要に応じてタグ設定やJSONテンプレートによる自動化も利用できます
注意点
多くの場合、関連サービスを有効化するだけで「デフォルトワークスペース」が自動生成されます。明示的に自分のワークスペースを作成した場合は、ログの送信先を正しく設定するようにしましょう。
仮想マシンのログ収集の自動化
かつては「Log Analyticsエージェント」を手動でインストールし、ワークスペースIDやキーを個別に設定する必要がありました。現在は「データ収集ルール(DCR: Data Collection Rule)」を利用することで、Azure管理基盤から自動的にエージェントのインストール・設定が可能になっています。
手順例(VM Insightsを利用する場合)
- 対象の仮想マシンで「VM Insights」から分析情報を有効化します
- 収集ルールやログの送信先(ワークスペース)を選択・設定します
- 自動的にエージェントが展開され、データがワークスペースへ送信されます
複数台のVMに対して一括で適用できるため、大規模環境でも効率的に運用できます。
ログの確認・分析方法
ログの確認
ワークスペースの「ログ」メニューから、各種テーブルのデータを確認できます。たとえば、仮想マシンの「Heartbeat」テーブルでは、稼働状況・IPアドレス・OSの種類などを確認できます。
KQLによる分析
テーブルを指定し、KQLを使ってサマリーや集計、可視化を行うことができます。以下は5分ごとのログ件数を集計してグラフ表示する例です。
Heartbeat
| summarize count() by bin(TimeGenerated, 5m)
| render timechart
VM Insightsダッシュボードの活用
Microsoftが用意したVM Insightsのダッシュボードを使うと、CPU・メモリ・ディスク使用率などをグラフで確認できます。多数のVMがある場合でも、一画面で状況を把握できます。
各種サービスのログ送信設定
AzureのリソースはそれぞれのリソースページにあるAzure Monitorの「診断設定」から、ログの送信先としてLog Analyticsワークスペースを指定できます。これにより、リソースごとのログがワークスペースに集約されます。
設定例
- App Service Plan: 監視 > 診断設定 > Log Analyticsワークスペースへ送信
- Automationアカウント: 監視 > 診断設定 > 監査ログ・メトリックを送信
テーブルの増加とカスタム化
サービスごとに異なるログが存在するため、ワークスペース内のテーブル数はサービスを追加するたびに増えていきます。VM Insightsなどを有効化すると、必要なテーブルが自動的に作成されます。
また、ユーザー自身でカスタムテーブルを作成し、プログラムから独自のログを送信することも可能です。アプリケーションの独自ログをAzure上で一元管理したい場合に活用できます。
まとめ
Azure Log Analyticsワークスペースは、Azure Monitorの中核コンポーネントとして、さまざまなサービスや場所からログを集約・管理・分析できる非常に強力な基盤です。
- ログの一元管理・検索・可視化が可能です
- KQLによる高度な分析にも対応しています
- MicrosoftのテンプレートやVM Insightsダッシュボードを活用すれば、初心者でも手軽に可視化を始められます
- 診断設定やデータ収集ルールを使うことで、自動化・効率的な運用が実現できます
まずは基本的な診断設定やVM Insightsのダッシュボードから使い始め、慣れてきたらKQLの学習やカスタムテーブルの活用にチャレンジしてみてください。