Azure WebApps のログの収集
このページでは、Azure WebApps アプリケーションのログを収集する手順を説明し、ログ メッセージとクエリの例を示します。リンクをクリックして、トピックに移動してください。
- 前提条件
- ステップ 1: Azure ストレージ アカウントを設定する
- ステップ 2: HTTP Source を設定する
- ステップ 3: ARM テンプレートを使用して Azure リソースを設定する
- ステップ 4: Azure ポータルで診断を有効にする
- トラブルシューティング
- ログ メッセージのサンプル
- クエリのサンプル
前提条件
環境で以下の前提条件が整っていることを確認してください。
- 汎用 v2 (GPv2) および Blob ストレージ アカウントのみがサポートされています。この統合では、汎用 v1 (GPv1) アカウントはサポートされません。
- Azure WebApp サービスと同じ場所でストレージ アカウントを設定します。
ステップ 1.Azure ストレージ アカウントを設定する
この作業では、Azure WebApps サービスのモニタリング データをエクスポートするストレージ アカウント (汎用 v2 または Blob ストレージ) を設定します。
Azure ストレージ アカウントを設定するには、次の手順を実行します。
- 「Blob Storage からログを収集する」のステップ 1 を実行して、新しいストレージアカウントとコンテナを作成します。
- 「ステップ 2: HTTP Source を設定する」に進みます。
ステップ 2: HTTP Source を設定する
この作業では、Azure 関数からログを受信するための HTTP Source を設定します。
Azure の HTTP Source を設定するには、次の手順を実行します。
- 次のいずれかを実行します。
- HTTP Source を設定する Hosted Collector を選択します。
- 「Hosted Collector を設定する」の説明に従って Hosted Collector を新規作成します。
- 「HTTP ログとメトリクス Source」の説明に従って HTTP Source を設定します。次のステップで必要になるため、Source の URL を書き留めます。
ステップ 3: ARM テンプレートを使用して Azure リソースを設定する
Sumo で用意されている ARM テンプレートを使用するには、「Azure Blob Storage からログを収集する」のステップ 3 を実行します。
ステップ 4.Azure ポータルで診断を有効にする
この作業では、Azure WebApps のログを有効化します。関連情報については、Azure ヘルプ ドキュメントの「Azure アプリケーション Service での Web アプリケーションの診断ログの有効化」を参照してください。
Azure WebApps のログを収集するには、以下の手順を実行します。
- Https://portal.azure.com/ にログインします。
- Azure WebApps に移動して、[Monitoring (モニタリング)] > [Diagnostics ログ (診断ログ)] をクリックします。
- [Application Logging (Blob) (アプリケーションのロギング (Blob))] を [On (オン)] に設定します。
- [Level (レベル)] で [Information (情報)] を選択します。
- [Storage Settings (ストレージ設定)] をクリックし、WebApps のログの格納に使用するストレージ アカウント (上記の「ステップ 1: Azure ストレージ アカウントを設定する」 で作成したまたは使用するように指定したストレージ アカウント) を選択します。
- [Add Container (コンテナの追加)] をクリックします。
- [Web server logging (Web サーバのロギング)] で [Storage (ストレージ)] を選択します。
- [Storage Settings (ストレージ設定)] をクリックし、この作業のステップ 5 と同じ設定を選択します。
トラブルシューティング
上記の設定を実行した後にログが Sumo Logic に取り込まれない場合、「Azure Blob Storage のログ収集をトラブルシューティングする」を参照してください。
ログ メッセージのサンプル
2017-09-25 23:27:36 eShopCart GET / X-ARR-LOG-ID=9b3056e8-21d5-43f7-8fd7-4aec6b29525e 80 - 60.4.192.44 Mozilla/5.0+(Macintosh+NT+6.3;+WOW64)+AppleWebKit/537.36+(KHTML, +like+Gecko)+Chrome/60.4.192.44+Safari/537.36 PHPSESSID=tv2iv6tn8c9su542l464ibaro5; +ARRAffinity=d6c6606b1a249bd37139b09d6c2cb4dd61f6b5cd607f934012aca86bd59515444 - eShopCart.azurewebsites.net 200 0 0 3098 1008 1000
クエリのサンプル
トラフィックの経時的な外れ値
_sourceCategory=Azure/Web-app
| parse regex "\d+-\d+-\d+ \d+:\d+:\d+ (?<s_sitename>\S+) (?<cs_method>\S+) (?<cs_uri_stem>\S+) (?<cs_uri_query>\S+) (?<src_port>\S+) (?<src_user>\S+) (?<client_ip>\S+) (?<cs_user_agent>\S+) (?<cs_cookie>\S+) (?<cs_referrer>\S+) (?<cs_host>\S+) (?<sc_status>\S+) (?<sc_substatus>\S+) (?<sc_win32_status>\S+) (?<sc_bytes>\S+) (?<cs_bytes>\S+) (?<time_taken>\S+)"
| timeslice 5m
| count by _timeslice
| outlier _count