はじめに
Azureには複数の監視・分析サービスが存在しますが、用途や設定方法が異なるため、どれを使えばいいのか迷うことも多いです。
この記事では、以下の5つのサービスについて、違い・最適な用途・設定方法・構成図をQiita風にまとめました。
- Azure Monitor
- Azure Dashboard
- Azure Monitor Workbook
- Azure Data Explorer (ADX)
- Application Insights
サービス別比較表
| サービス名 | 主な用途 | 対象範囲 | 特徴的な機能 |
|---|---|---|---|
| Azure Monitor | 全体監視のハブ | VM, App, DB, Networkなど | メトリクス収集・アラート・ログ統合 |
| Azure Dashboard | 可視化・共有 | 任意のAzureリソース | タイル形式で自由に構成可能 |
| Azure Monitor Workbook | 柔軟な可視化・分析 | Log Analytics, Insights, カスタムデータ | KQLベースの動的レポート・共有可能なテンプレート |
| Azure Data Explorer (ADX) | 高速ログ分析・クエリ | 大量のログ・テレメトリ | KQLによる高速クエリ・可視化 |
| Application Insights | アプリケーションのパフォーマンス監視 | Web/API/Functionなど | リクエスト/依存関係/例外のトレース |
各サービスの設定方法
Azure Monitor
- Azure Portalで対象リソースを開く
- 「診断設定」→「ログを送信」→ Log Analytics ワークスペースを選択
- 必要なログカテゴリ(例:AuditLogs, Metrics)を有効化
- アラートルールを作成(条件・アクション・通知)
Azure Dashboard
- Azure Portal → Dashboard → 新規作成
- 「ピン留め」機能でMonitorやInsightsのグラフを追加
- 「共有」→「読み取り専用リンク」や「チーム共有」設定
Azure Monitor Workbook
- Azure Portal → Monitor → Workbooks
- 既存テンプレートを利用、または「新しいワークブック」を作成
- KQLクエリやパラメータを使って動的な可視化を構築
- チームで共有・エクスポートも可能(JSON形式)
Azure Data Explorer (ADX)
- Azure Portal → Data Explorer → クラスター作成
- Log AnalyticsやApplication Insightsからデータをインジェスト
- KQL(Kusto Query Language)でクエリ作成
- 可視化オプション(グラフ、テーブル)を設定
Application Insights
- Azure Portal → Application Insights → リソース作成
- SDKをアプリに導入(.NET: NuGet、Java: Mavenなど)
- Instrumentation Key または Connection String を設定
- 自動収集(リクエスト、例外、依存関係)を有効化
- カスタムイベントやメトリクス送信も可能
構成図
以下の構成図は、各サービスの連携関係を示しています。
- Application Insights:アプリからのテレメトリを収集
- Azure Monitor:全体のログ・メトリクスを統合
- Workbook:MonitorやInsightsのデータを動的に可視化
- Data Explorer:Monitorのログを高速分析
- Dashboard:WorkbookやInsightsの結果を共有・表示
使い分けのポイント
| 目的 | 最適サービス |
|---|---|
| アプリのパフォーマンス監視 | Application Insights |
| リソース全体の監視 | Azure Monitor |
| 可視化・共有(静的) | Azure Dashboard |
| 可視化・分析(動的・柔軟) | Azure Monitor Workbook |
| 高速ログ分析 | Azure Data Explorer |
ユースケース別おすすめサービス
| ユースケース | 最適サービス | 理由 |
|---|---|---|
| メトリクスをリアルタイムで確認したい | Azure Monitor Workbook | KQLベースで柔軟にメトリクスを可視化でき、リアルタイム更新も可能 |
| リソース間のどこでエラーが起きているか確認したい | Application Insights | 分散トレースにより、リクエストの流れや依存関係のエラー箇所を特定できる |
| チーム全体で定期的に監視状況を共有したい | Azure Dashboard | ダッシュボードを共有リンクやチーム単位で公開でき、定期的なレビューに最適 |
| リソースのエラーの前後で起きている他のリソースのエラーを追跡したい | Azure Monitor Workbook | タイムラインや相関分析をKQLで柔軟に構成可能 |
| あるリソースのエラーの前で操作を行っているユーザを見たい | Azure Monitor + Workbook | AuditLogsやActivityLogsを組み合わせて、ユーザー操作とリソースイベントを時系列で分析可能 |
おわりに
まずは Application Insights を導入し、Azure Monitor と連携して可視化・分析を広げるのがスモールスタートにおすすめです。
可視化には Dashboard だけでなく、柔軟な分析が可能な Workbook を併用することで、より深い洞察が得られます。
さらに高度な分析が必要になったら Data Explorer を活用し、チームで共有するために Dashboard や Workbook を組み合わせる流れが理想的です。
