Azure FunctionsアプリのDurable Functions診断

Azure Functionsアプリ診断では、Azure ポータルに組み込みの検出機能が用意されており、拡張機能のバージョンの問題、CPU 使用率の高さ、メモリ不足、アプリケーション エラーなどについて、Durable Functions アプリケーションを自動的にチェックします。 各検出機能は問題を特定し、ポータルで直接適用できる修正プログラムを提案します。

適切な検出器を見つける

次の表を使用して、症状に一致する検出機能に移動します。

症状: 検出器
拡張機能のバージョンの問題、オーケストレーションのパフォーマンスの問題、または一般的な正常性チェック Durable Functions デテクター
アプリがダウンしている、エラーが返される、または関数がトリガーされない Functions アプリがダウンしているかエラーを報告
オーケストレーションが遅い、または CPU 使用率が高い 高 CPU 分析
メモリ不足の例外またはメモリ消費量が多い メモリ分析

アプリ診断を開く

  1. Function App リソースに移動します。 左側のメニューで、[ 問題の診断と解決] を選択します。

  2. "Durable Functions" を検索し、結果を選択します。

    Durable Functions 検出機能を Azure Functions アプリ診断で検索する方法を示すスクリーンショット

Durable Functions検出器

Durable Functions検出機能は、Durable Functions アプリに固有の一般的な問題をチェックします。 報告します。

  • アプリが使用するDurable Functions拡張機能のバージョンと、アップグレードが利用可能かどうか。
  • オーケストレーションの速度低下やキューの待機時間の長さなど、パフォーマンスの問題。
  • 最近のオーケストレーション実行のエラーまたは警告。

問題が見つかった場合、検出機能は軽減策と関連ドキュメントへのリンクを提案します。

拡張機能のバージョン、パフォーマンスの問題、および警告を示すDurable Functions検出機能のスクリーンショット。

関数アプリがダウンしているかエラーを報告しています

Functions App Down または Reporting Errors ディテクタは、プラットフォームの正常性、アプリの構成、依存関係の可用性など、アプリケーションの主要な領域を確認する複数のサブディテクタからの結果を集計します。 アプリが応答しない場合、または予期しないエラーが返される場合は、この検出機能を使用します。

次のスクリーンショットは、実行されたチェックと、注意が必要な 2 つの問題を示しています。

Functions アプリがダウンまたはエラーを報告する際に、それを検出する機能のスクリーンショットで、注意が必要なチェックと問題を示しています。

高 CPU 使用率分析

高 CPU 分析検出機能は、過剰な CPU を消費しているアプリまたはプロセスを識別します。 多くの場合、Durable Functions アプリでの CPU 使用率が高いのは、大規模なファンアウト操作、タイトなポーリング ループ、またはコンピューティング負荷の高いアクティビティ関数が原因です。

検出機能が CPU 使用率の高いアプリを識別すると、影響を受けるプロセスと CPU の割合が表示されます。

CPU 使用率が高いアプリを示す高 CPU 分析検出機能のスクリーンショット。

推奨されるアクションを表示するには、[ ソリューションの表示 ] を選択します。 一般的な推奨事項には、アプリケーションをプロファイリングしてホット パスを識別する方法や、サイトを再起動して一時的なスパイクから復旧する方法などがあります。

高 CPU 分析検出機能から提案されたソリューションのスクリーンショット。

メモリの分析

メモリ分析検出機能は、メモリ消費量を監視し、使用可能なメモリに近づいているアプリまたはメモリを超えるアプリにフラグを設定します。 Durable Functionsアプリでは、オーケストレーションが大きなペイロードを処理するとき、または多数のオーケストレーション インスタンスが同時に実行されるときに、高いメモリ使用量が発生する可能性があります。

メモリ使用量が昇格されると、時間の経過に伴うメモリ使用量グラフと共に警告が表示されます。

警告とメモリ使用量グラフを示すメモリ分析検出機能のスクリーンショット。

推奨されるアクションを表示するには、[ ソリューションの表示 ] を選択します。 一般的な提案としては、メモリが多いプランへのスケールアップや、ペイロード サイズを小さくするためのオーケストレーションの最適化などがあります。

メモリ分析検出からの推奨ソリューションのスクリーンショット。

次のステップ