次の方法で共有


Azure App Service のクォータとメトリック

Azure App Service には、Azure portal の Web、モバイル、および API アプリに対する組み込みの監視機能が用意されています。

ポータルでは、アプリと App Service プランのクォータメトリックを確認できます。 メトリックに基づいて、アラート自動スケーリングのルールを設定できます。

クォータ

App Service にホストされているアプリは、使用できるリソースに一定の制限があります。 アプリに関連付けられている App Service プランによってこの制限が定義されます。

App Service の Free および Shared (プレビュー) サービス プランは、他の App Service アプリと同じ Azure 仮想マシンで稼働する基本レベルです。 一部のアプリは他のお客様に属する場合もあります。 これらのレベルは、開発とテストのみを目的としています。

アプリが Free プランまたは Shared プランでホストされている場合、アプリで使用できるリソースの制限はクォータによって定義されます。 Free プランまたは Shared プランのアプリのクォータは次のとおりです。

クォータ 説明
CPU (ショート) このアプリが 5 分間に使用できる CPU の量。 このクォータは、5 分ごとにリセットされます。
CPU (1 日) このアプリが 1 日に使用できる CPU の総量。 このクォータは、24 時間ごとに (UTC の午前 0 時に) リセットされます。
メモリ このアプリが使用できるメモリの総量。
帯域幅 このアプリが 1 日に使用できる送信帯域幅の総量。 このクォータは、24 時間ごとに (UTC の午前 0 時に) リセットされます。
ファイルシステム 使用可能なストレージの総量。

アプリが Basic プラン、Standard プラン、Premium プランでホストされている場合、アプリで使用できるリソースの制限は、App Service プランのサイズ (S、M、L) とインスタンス数 (1、2、3 など) によって設定されます。 Basic プラン、Standard プラン、Premium プランでホストされているアプリに適用できるクォータは、ファイルシステムのみです。

さまざまな App Service のレベルで利用できる特定のクォータ、制限、機能について詳しくは、「Azure App Service の制限」を参照してください。

クォータの適用

アプリが CPU (ショート)CPU (1 日)帯域幅のクォータを超過すると、クォータがリセットされるまでアプリは停止されます。 この期間中は、すべての受信要求の結果が HTTP 403 エラーになります。

403 エラー メッセージを示すスクリーンショット。

アプリは、メモリ クォータを超えると一時的に停止します。

ファイルシステム クォータを超えた場合は、すべての書き込み操作が失敗します。 書き込み操作の失敗には、ログへの書き込みも含まれます。

クォータを引き上げたりアプリから削除したりするには、App Service プランをアップグレードしてください。

メトリック

メトリックを利用すると、アプリまたは App Service プランの動作に関する情報が得られます。 App Service プランのメトリックは、Basic、Standard、Premium、Isolated の各レベルのプランでのみ使用できます。

アプリまたは App Service プランで使用可能なメトリックの一覧については、「Microsoft.Web でサポートされるメトリック」を参照してください。

アプリのメトリックには、アプリのソース管理マネージャー (SCM) サイト (Kudu とも呼ばれます) への要求が含まれます。 これには、Kudu を使用してサイトのログ ストリームを表示する要求が含まれます。 ログ ストリーム要求は数分間にわたる可能性があり、要求時間メトリックに影響を与えます。 これらのメトリックを自動スケーリング ロジックで使用する場合は、この関係に注意する必要があります。

HTTP サーバー エラーは、バックエンド サービス (アプリをホストするワーカー) に到達する要求のみを記録します。 フロントエンドで要求が失敗した場合、要求は HTTP サーバー エラーとしては記録されません。 正常性チェック機能と Application Insights 可用性テストを使用して、外部から監視を行うことができます。

CPU 時間とCPU の割合

次の 2 つのメトリックに CPU 使用率が反映されます。

  • CPU 時間: Free プランまたは Shared プランでホストされているアプリで有益です。これらのプランのクォータの 1 つが、アプリで使用される CPU 時間で定義されているためです。

  • CPU の割合: Basic、Standard、および Premium プランでホストされるアプリで有益です。これらはスケール アウトが可能だからです。CPU の割合は、インスタンス全体にわたる使用率の有効な指標になります。

アイテム保持ポリシー

サービスは、アプリと App Service プランのメトリックをログに記録して集計します。 メトリックは、ルールに従って保持されます。

Azure portal でのクォータとメトリックの監視

アプリに影響するクォータとメトリックの状態を確認するには、Azure portal にアクセスします。

クォータを検索するには、[設定]>[クォータ] を選択します。 各グラフで、クォータに関するこの情報を確認できます。

  • 名前
  • リセットの間隔
  • 現在の制限
  • 現在の値

Azure portal のクォータ グラフを示すスクリーンショット。

メトリックには、リソースの [概要] ページから直接アクセスできます。 このページには、アプリのメトリックの一部を表すグラフが表示されます。 これらのグラフのいずれかを選択すると、[メトリック] ビューが表示されます。ここでは、カスタム グラフの作成、さまざまなメトリックのクエリ実行などを行えます。

Azure portal のメトリック グラフを示すスクリーンショット。

メトリックの詳細については、「Azure Monitor データ プラットフォーム」を参照してください。

アラートと自動スケーリング

アプリまたは App Service プランのメトリックは、アラートに関連付けることができます。 詳細については、「アラート」を参照してください。

Basic 以上の App Service プランでホストされているアプリでは自動スケーリングがサポートされます。 自動スケーリングでは、App Service プランのメトリックを監視するルールを構成することができます。 ルールによってインスタンス数を増減できます。これにより、必要に応じて追加リソースを用意できます。 ルールは、アプリがオーバー プロビジョニングされたときのコスト削減にも役立ちます。

自動スケーリングの詳細については、「Azure での自動スケールの使用」「自動スケールのベスト プラクティス」を参照してください。