トレースの重大度の比率の低下 (プレビュー)Degradation in trace severity ratio (preview)

トレースはバックグラウンドの状況を把握するのに役立つため、アプリケーションで広く使用されています。Traces are widely used in applications, as they help tell the story of what happens behind the scenes. 問題が発生したときに、望ましくない状態の原因となる一連のイベントを可視化するうえでトレースは極めて重要です。When things go wrong, traces provide crucial visibility into the sequence of events leading to the undesired state. 通常、トレースは構造化されていませんが、トレースから具体的にわかることが 1 つあります。トレースの重大度レベルです。While traces are generally unstructured, there is one thing that can concretely be learned from them – their severity level. アプリケーションの安定状態で、安定した状態を保つための "良好な" トレース (InfoVerbose) と "問題のある" トレース (WarningErrorCritical) の比率を予想します。In an application’s steady state, we would expect the ratio between “good” traces (Info and Verbose) and “bad” traces (Warning, Error, and Critical) to remain stable. さまざまな理由 (ネットワークの一時的な問題など) によって "問題のある" トレースがある程度まで定期的に発生する可能性があることが想定されています。The assumption is that “bad” traces may happen on a regular basis to a certain extent due to any number of reasons (transient network issues for instance). しかし、実際の問題が大きくなり始めると、通常は "問題のある" トレースと "良好な" トレースの相対的比率の増加として現れます。But when a real problem begins growing, it usually manifests as an increase in the relative proportion of “bad” traces vs “good” traces. Application Insights のスマート検出では、アプリケーションによって記録されたトレースを自動的に分析し、トレースのテレメトリの重大度における異常なパターンについて警告できます。Application Insights Smart Detection automatically analyzes the traces logged by your application, and can warn you about unusual patterns in the severity of your trace telemetry.

この機能には、アプリのトレース ログを構成する以外に特別な設定は不要です (.NET または Java のトレース ログ リスナーを構成する方法を参照してください)。This feature requires no special setup, other than configuring trace logging for your app (see how to configure a trace log listener for .NET or Java). この機能は、アプリが十分な例外のテレメトリを生成するとアクティブになります。It is active when your app generates enough exception telemetry.

この種類のスマート検出通知はどのような場合に取得されますか。When would I get this type of smart detection notification?

過去 7 日間に計算されたベースラインと比較して、"良好な" トレース (Info または Verbose レベルで記録されたトレース) と "問題のある" トレース (WarningError、または Fatal レベルで記録されたトレース) の比率が特定の日に低下している場合に、この種の通知が送信されます。You might get this type of notification if the ratio between “good” traces (traces logged with a level of Info or Verbose) and “bad” traces (traces logged with a level of Warning, Error, or Fatal) is degrading in a specific day, compared to a baseline calculated over the previous seven days.

アプリに問題があるのは確かですかDoes my app definitely have a problem?

いいえ。通知は、アプリに確実に問題があることを示すものではありません。No, a notification doesn't mean that your app definitely has a problem. "良好な" トレースと "問題のある" トレースの比率の低下がアプリケーションの問題を示している場合もありますが、比率のこの変化が無害の場合もあります。Although a degradation in the ratio between “good” and “bad” traces might indicate an application issue, this change in ratio might be benign. たとえば、アプリケーションの新しいフローで既存のフローよりも多くの "問題のある" トレースが生成されたことが原因で変化する場合があります。For example, the increase might be due to a new flow in the application emitting more “bad” traces than existing flows).

どのように修正すればよいですかHow do I fix it?

通知には、診断プロセスでサポートされる診断情報が含まれています。The notifications include diagnostic information to support in the diagnostics process:

  1. トリアージTriage. 通知では影響を受ける操作の数が示されます。The notification shows you how many operations are affected. この情報を基に、問題に優先順位を割り当てることができます。This can help you assign a priority to the problem.
  2. 範囲Scope. 問題の影響を受けるのはすべてのトラフィックか、それとも一部の操作だけか。Is the problem affecting all traffic, or just some operation? この情報を通知から取得できます。This information can be obtained from the notification.
  3. 診断Diagnose. サポート情報にリンクしている関連項目とレポートを使用して、問題の詳細な診断に役立てることができます。You can use the related items and reports linking to supporting information, to help you further diagnose the issue.