このページでは、AppDynamics がお使いのアプリケーションのベースラインパフォーマンスを自動的に計算する方法について説明します。全般的なパフォーマンス特性を確立すると、アプリケーションの異常な状態を検出できるようになります。AppDynamics はベースラインを使用して以下を実行します。

  • フローマップに色を付ける。 
  • トランザクションスコアのダッシュボードを表示する。
  • メトリックグラフとメトリックブラウザのメトリックを比較する。
  • 正常性ルールの正常性を評価する(「正常性ルール」を参照)。

ベースラインの仕組み

AppDynamics では、基礎となる 1 時間分のデータを使用してベースラインが計算されます。ベースラインはすべてのメトリックについて計算できます。ベースラインには2つの主要変数が存在します。

  • ベースラインの計算には、データが蓄積された時間が考慮されるべき。
  • ベースラインの季節性。

傾向を特定するためのベースラインの使用

パフォーマンスの予測は、時間、曜日、月によって異なります。例:

  • 小売アプリケーションは、平日よりも週末にトラフィックが多くなることがあります。
  • 給与アプリケーションは、月初や月末により高い負荷が見られることがあります。

この変化を考慮して、ベースラインコンテキストとしてローリング期間を使用できます。ローリング期間は、対象期間中の日次、週次、月次の間隔で取得される現在の時刻からのデータに対するベースラインを確立します。

たとえば、期間が 30 日間に設定された日次の傾向または期間が 90 日間に設定された週次の傾向が使用されるベースラインを作成できます。

日次の傾向は、過去 30 日間の毎日同じ時間に蓄積されたデータからベースラインを計算します。

30-day baseline diagram

週次の傾向は、過去 90 日間の同じ時間と曜日に蓄積されたデータからベースラインを計算します。これは、使用可能なデフォルト設定の 1 つです。

Weekly 90-day Baseline Diagram

月次の傾向は、毎月同じ日の同じ時間に蓄積されたデータからベースラインを計算します。たとえば、1 月 5 日の午前 10 時半の場合、ベースラインは前年(365 日)の毎月 5 日の同じ時間に蓄積されたデータに基づいて作成されます。

Monthly 365-day baseline diagram

ベースラインは、起動してすぐには利用できません。AppDynamicsプラットフォームでデータを収集し、最初のベースラインを作成するのに時間とアプリケーション負荷がかかるためです。所要時間は、使用するベースラインタイプ(日次、週次、月次、なし)によって異なります。なしの場合はベースラインが利用できるまでに数時間、日次の場合は数日、週次の場合は数週間かかります。

デフォルトでは、1 分あたりのコール数が 20 未満の場合、メトリックのベースラインは計算されません。1 分あたりのコール数のしきい値を設定するには、AppDynamics アカウント担当者にお問い合わせください。

標準偏差の計算方法

標準偏差は、次の標準式を使用して計算します。

standard deviation = sqrt [(B - A^2/N)/N]

説明:
A = データ値の合計
B = 2 乗したデータ値の合計
N = データ値の数

標準偏差の計算は、使用されるメトリックのタイプによって異なります。

  • 時間ロールアップタイプが合計または平均の場合
  • クラスタロールアップタイプが個別または集合の場合
    クラスタロールアップタイプは、階層またはアプリケーションレベルでのみ適用されます(ノードレベルのメトリックは同じ計算になります)。

この例では、以下のメトリックタイプを使用した標準偏差を示します。

  • 時間ロールアップタイプ = 平均
  • クラスタロールアップタイプ = 集合
Metric - Calls Per Minute (Average, Collective)
(Hourly Metric Table)
時間合計応答数重み値2 乗された重み値
09:00
1802180300
10:00
3002300780
11:00
1502150195

これらのメトリック値では、type = All Data のベースラインは、上記の値を計算に使用して 3 時間(12:00)続きます。

日次、週次、または月次の季節性の場合、考慮されるデータポイントはそれぞれ、すべての日、同じ曜日、または同じ月日の同じ時間の値です。

この場合のベースラインの計算は次のようになります。

Value = (180+300+150)/360 = 1.75

Standard deviation = sqrt(((300+780+195) - (((180+300+150)^2)/360))/360) = 0.69

ベースラインの設定と表示

ベースライン偏差はある時点のベースラインからの標準的な偏差で、整数で表されます。このベースライン偏差に基づいて、正常性ルール条件を設定できます。たとえば、ベースラインからの 2 標準偏差を警告条件、ベースラインからの 4 標準偏差を重大条件として構成できます。 

ベースラインを設定するには、次の手順を実行します。

  1. [Configuration > Baselines] に移動します。

    AppDynamics により、使用可能なすべてのベースライン(事前設定済みのベースラインと作成済みのベースラインの両方)が一覧表示されます。

    デフォルトのベースラインは、日次の傾向です。これは、正常性ルールの作成時に別のベースラインが指定されない場合に正常性ルールにより使用されるベースラインです。


  2. ベースラインリスト内の別のベースラインをデフォルトとして選択するには、[Set as Default ] をクリックします。

    デフォルトのベースラインを変更すると、デフォルトに依存している既存の正常性ルールすべての実際のベースラインが変更されることになります。別のベースラインを指定することはありません。このオプションを選択する前に、既存のベースラインと正常性ルールの定義を確認してください。

  3. 使用する傾向タイプを選択します。
  4. 傾向の期間と傾向を設定します。基本期間は、次の 2 つの範囲で使用できます。

    • 固定時間範囲:特定の日時から別の日時までの期間。たとえば、ある時間にリリースサイクルがある場合、データコレクションをその時間に制限することができる。
    • ローリング時間範囲:最新の X 日数が使用される。こちらの方がより一般的。