アプリケーション ログ ファイルを取得する
ログ ファイルは Web 開発者にとって有用なリソースですが、ログ記録された情報を検索して使用する方法を理解しておく必要があります。 ここでは、オフライン分析用に、ログ記録された情報を取得するために使用できる方法を確認します。
ログ ファイル ストレージの場所
Windows で Azure Web Apps を実行するために使用される Azure インフラストラクチャは、Linux アプリ用のインフラストラクチャとは異なり、ログ ファイルは同じ場所に保存されません。
Windows アプリ ログ ファイル
Windows アプリの場合、ファイル システム ログ ファイルは、Web アプリに関連付けた仮想ドライブに格納されます。 このドライブは D:\Home としてアドレス指定でき、LogFiles フォルダーが含まれます。このフォルダーには、次の 1 つまたは複数のサブフォルダーが含まれます。
- Application - アプリケーションによって生成されたメッセージが含まれています (ファイル システム アプリケーション ログが有効になっている場合)。
- DetailedErrors - 詳細な Web サーバー エラー ログが含まれています (詳細エラー メッセージが有効になっている場合)。
- http - Web サーバー ログが有効になっている場合、IIS レベルのログが含まれています。
- W3SVC<number> - 失敗したすべての http 要求の詳細が含まれています (失敗した要求のトレースが有効になっている場合)。
BLOB コンテナーへの格納が有効になっている場合は、年、月、日、および時間の各フォルダーにログが格納されます。次に例を示します。
2019
01
10
08 - log entries for the period 08:00:00 to 08:59:59 on January 10th 2019
09 - log entries for the period 09:00:00 to 09:59:59 on January 10th 2019
時間フォルダーには、その 60 分間に保存されたメッセージを含む 1 つ以上の CSV ファイルが含まれます。
Linux アプリ ログ ファイル
Linux Web アプリの場合、Azure ツールで現在サポートされているログ オプションの数が Windows アプリの場合よりも少ないです。 STDERR と STDOUT へのリダイレクトは、アプリを実行する、基になる Docker コンテナーを介して管理され、これらのメッセージは Docker ログ ファイルに格納されます。 Apache などの根底にあるプロセスによってログに記録されるメッセージを表示するには、Docker コンテナーへの SSH 接続を開く必要があります。
ログ ファイルを取得する方法
ログ ファイルを取得する方法は、ログ ファイルの種類および望みの環境によって異なります。 ファイル システム ログでは、Azure CLI または Kudu コンソールを使用できます。 Kudu は、ソース管理ベースのデプロイに関連する Azure App Service の多くの機能の背後にあるエンジンです。
Azure CLI
Azure CLI を使用してファイル システム ログ ファイルをダウンロードするには、まずアプリのファイル システムから Cloud Shell ストレージにログ ファイルをコピーした後、次のコマンドを実行します。
az webapp log download --log-file \<_filename_\>.zip --resource-group \<_resource group name_\> --name \<_app name_\>
zip 化されたログ ファイルをローカル コンピューターにダウンロードするには、Cloud Shell のツール バーのファイルのダウンロードおよびアップロード ツールを使用します。 ダウンロードすると、ファイルは Microsoft Excel やその他のアプリで開くことができます。
Note
Azure CLI ダウンロードには、失敗した要求トレース以外のすべてのアプリ ログが含まれます。
Kudu
すべての Azure Web Apps に関連付けられるソース コントロール管理 (SCM) サービス サイトがあります。 このサイトは、Kudu サービスおよびその他のサイト拡張機能を実行します。 ログ ファイルを表示およびダウンロードするためのオプションを含め、Azure Web Apps のデプロイとトラブルシューティングを管理するのは Kudu です。 Kudu で利用できる特定の機能、およびログをダウンロードする方法は、Web アプリの種類によって異なります。 Windows アプリでは、ログ ファイルの場所を参照してからログをダウンロードできます。 Linux アプリの場合は、ダウンロード リンクが存在する場合があります。
Kudu コンソールにアクセスする方法の 1 つは、https://<app name>.scm.azurewebsites.net に移動してから、デプロイ資格情報を使用してサインインすることです。
Azure portal から Kudu にアクセスすることもできます。 [App Service] メニューの [開発ツール] セクションで [高度なツール] を選択し、[高度なツール] ペインで [移動] を選択して、新しい [Kudu サービス] タブを開きます。
Windows アプリからログ ファイルをダウンロードするには、次の手順に従います。
[デバッグ コンソール] を選択し、[CMD] を選択します。
ファイル エクスプローラー セクションで、[LogFiles] を選択し、[アプリケーション] フォルダーとしては [ダウンロード] を選択します。 ログは Application.zip としてコンピューターにダウンロードされます。
Linux アプリの場合は、[環境] ページでダウンロード リンクを選択します。
Azure Storage ブラウザー
Azure Blob Storage コンテナーに保存された Windows ログにアクセスするには、Azure portal を使用できます。 ログ ファイル コンテナーの内容を表示してダウンロードするには、ポータル メニューから [ストレージ アカウント] を選択します。 ストレージ アカウントを選択してから、[ストレージ ブラウザー] を選択します。 ストレージ コンテナーの種類 (たとえば、BLOB コンテナーなど) を開き、ログ ファイルを含む BLOB コンテナーの名前を選択します。 コンテナーの中で、関連する年、月、日、および時間のフォルダーを開いてから、CSV ファイルをダブルクリックしてコンピューターにそれをダウンロードします。
コンピューターに Microsoft Excel がある場合は、ログ ファイルは自動的に Excel ワークシートとして開かれます。 そうでない場合は、メモ帳などのテキスト エディターを使用してファイルを開くことができます。