Azure ポータルから確認できる Web Apps の情報

こんにちは。日本マイクロソフト Azure CIE サポートの片岡です。
Azure Web Apps を利用する中で、Web サイトの動作が遅いなど、いろいろな問題が発生する可能性もあるかと思います。
そのため、Azure Web Apps で問題が発生した場合に、ご利用者様にてご実施可能なトラブルシューティング方法について、シリーズ化してご紹介させていただきます!

今回のブログでは、Azure ポータル上から確認できる、以下の 2 点についてご紹介させていただきます。

1. メトリック情報
2. アプリケーションの正常性確認

1. メトリック情報

Azure ポータル上では、CPU 使用率、HTTP エラー、平均応答時間など、様々な情報が確認可能です。
これらの情報は、Azure ポータル上で該当の Web App を選択し、以下の赤い四角で囲った ”インスタンスあたりのメトリックス” という項目から、確認が可能であり、例えばアプリケーションの動作が遅いなどの事象が発生した場合に、負荷状況を確認するためなどに有効です。

例えば、動作が遅いと感じたときは、以下の画像の表で、CPU 使用率を確認するのが効果的です。

metric_cpu

CPU 使用率が高い場合には、アプリケーションの処理で非常に高い負荷がかかってしまっていると考えられます。

もし、CPU 使用率が高い状態が一時的に発生していた場合には、続いて [Site Metrics] タブから確認できる以下の表を確認するのがよいかもしれません。
HTTP 通信の状況が確認できますので、例えば CPU 使用率が一時的に向上していた時間帯に、HTTP リクエストの数も向上していた場合は、一時的に HTTP リクエストが急増したことによる負荷と判断できます。

metric_http

一方で、常に CPU 使用率が高い、HTTP リクエストの数が多いといった場合には、非常にアクセス数の多いサイトであると思われます。
この場合は、スケール アウト (インスタンスの数を増やして負荷分散する) などの対応をご検討いただくのも有効かもしれません。
スケール アウトは、以下の画像のように「CPU 使用率が指定した閾値よりも高くなった場合」といったトリガーを作成し、その間だけインスタンスを増やすという対応もできます。
必要なときだけ増やし、不要となったら減らすことで、費用も抑えることができます。

autoscale

なお、本情報は、アプリごと、もしくは App Service プランごとに確認可能です。
特定のアプリケーションのメトリック情報を参照する場合にはアプリごと、インスタンス全体の情報を参照する場合には App Service プランごとのメトリックを参照ください。
参照可能な情報については、以下のドキュメントがございますので、必要に応じてご参照ください。

Azure App Service でアプリを監視する方法
/ja-jp/azure/app-service-web/web-sites-monitor

 

2. アプリケーションの正常性確認

上記のメトリックの情報と併せて、以下の赤い四角で囲った “障害の履歴” の箇所から、失敗した HTTP リクエストの数やサイトの正常性 (Availability) などが確認可能です。
何らかの異常が発生していないかなどは、以下より確認が可能です。

applens

なお、"障害の履歴" は、appLens と呼ばれる機能でドキュメントなどでは、appLens として紹介されていることもあるので、ご注意ください。
英文のみのご用意となりますが、上記に機能については以下の情報がございます。

Introducing appLens for Azure App Service Web App
https://blogs.msdn.microsoft.com/appserviceteam/2016/06/02/applens/

 

Azure ポータル上から有効な情報が確認できない場合は、診断ログの機能を利用し、Web サーバー ログなどを確認するのが有効となる場合があります。
そのため、次回以降は Azure ポータル以外から確認できるログ機能などについて、ご紹介させていただきます!