このページでは、AppDynamics がトランザクション スナップショットを取得するようにトリガーするシナリオと、トランザクション スナップショット設定を構成する方法について説明します。

AppDynamics は、トランザクションの選択されたインスタンスのトランザクション スナップショットを取得して、トランザクションの 1 回のコールに対する処理フローをクロスレイヤで表示します。トランザクション スナップショットの内容については、「トランザクションスナップショット」を参照してください。

以下のセクションで説明するガイドラインと制限に基づき、次の場合にスナップショットを取得します。

  • アプリエージェントは、ビジネストランザクションのユーザーエクスペリエンスが遅延している、またはトランザクションでエラーが発生したと判断します。
  • アプリエージェントは、定期的なスナップショット収集の際にスナップショットを収集します。
  • アプリエージェントは、診断セッション中にスナップショットを収集します。 

スナップショットとコールグラフ保持ルール

特定のトランザクション インスタンスでは、コールグラフはすべてではなく一部のティアでのみ使用できる場合があります。以下のガイドラインでは、アプリエージェントがトランザクションの開始ティアとダウンストリームティアにおいて、トランザクション スナップショットを取得するときの規則について説明します。また、スナップショットの原因によっては、スナップショットに含まれる可能性のあるコールグラフの種類についても説明します。このガイドラインは、ビジネストランザクションの相関関係とアプリケーション間のフローに適用されます。

  • ティア(元のティアまたは継続)は応答時間の遅延、過剰遅延、停滞を認識するか、エラーが発生すると、スナップショットを取得します。
  • 元のティアは以下の場合、トランザクション スナップショットを取得します。
    • エージェントがパフォーマンスの問題のパターンを検出したために元のティアで診断セッションを開始した場合。Business Transaction Dashboardから診断セッションを手動で開始することもできます。詳細については、診断セッションを参照してください。
    • 元のティアでエージェントが遅延、過剰遅延、または停滞の応答時間を特定するか、エラーが検出された場合。これらのスナップショットは、トランザクションの遅延やエラーが発生したときに開始されるため、情報が部分的なコールグラフになる場合があります。
    • 定期的収集スケジュールに基づくもの:デフォルトではエージェントが10分ごとに1枚のスナップショットを取得します。
  • ダウンストリームティアは、そのすぐ上のティアがスナップショットを取得するよう指示した場合にスナップショットを取得します。アップストリームティアは、以下の状況でスナップショットを取得するようダウンストリームティアに指示することがあります。
    • アップストリームティアが診断セッションのためにスナップショットを取得しているとき。
    • アップストリームティアが定期的収集スケジュールによりスナップショットを取得しているとき。

ガイドラインでは、スナップショットの保持もスナップショットの保持制限の対象としています(次のセクション参照)。 

トランザクションスナップショットの制限

スナップショットの保存制限は、ノードレベルでノードの過剰なリソース消費を防ぎます。

  • 元のトランザクション スナップショットの上限は、1 つのノードにつき 1 分あたり最大 20 件のスナップショット(最大 5 件の同時取得)。 

  • 継続的なトランザクション スナップショットの上限は、1 つのノードにつき 1 分あたり最大 200 件(同時取得 100 件)。 

AppDynamicsでは、スナップショットの保存制限をエラートランザクションにも適用します。その結果、たとえばエラーカウントメトリックで示されるすべてのエラー発生に対してスナップショットが取得されるわけではありません。エラートランザクションの場合、次の制限が適用されます。

  • 単一のトランザクションの場合、1 分間に最大 2 件のスナップショットが存在。 
  • 複数のトランザクション間では、1 分あたり最大 5 件のスナップショットが許可(ノードプロパティ max-error-snapshots-per-minute で指定)。

スナップショットの定期的な収集頻度の構成

デフォルトでは、AppDynamicsは10分おきにスナップショットを収集します。

[Configuration > Slow Transaction Thresholds] に移動します。Slow Transaction Thresholds の構成ページで、デフォルト設定を変更できます。

この値はその後作成されるビジネストランザクションに適用されますが、[Apply to all Existing Business Transactions] をチェックすると、既存のすべてのビジネストランザクションも変更の影響を受けます。

高負荷の実行環境である場合、スナップショットの収集に低い値を使用しない、つまり頻繁な収集を構成することが重要です。1 分あたり数千から数百万回のリクエストがある場合、スナップショットを頻繁に収集すると有意でない余分なスナップショットが数多く発生する可能性があります。定期的なスナップショット収集をオフにしてすべてのビジネストランザクションに適用するか、予想される負荷に応じて非常に控えめな(高い)レートを選択します。たとえば、アプリケーションが高負荷である場合、負荷パターンに応じて 1000 回ごと、または 20 分ごとを選択します。