このページでは、AppDynamics がお使いのアプリケーションのベースラインパフォーマンスを自動的に計算する方法について説明します。全般的なパフォーマンス特性を確立すると、アプリケーションの異常な状態を検出できるようになります。AppDynamics はベースラインを使用して以下を実行します。
- フローマップに色を付ける。
- トランザクションスコアのダッシュボードを表示する。
- メトリックグラフとメトリックブラウザのメトリックを比較する。
- 正常性ルールの正常性を評価する(「正常性ルール」を参照)。
ベースラインの仕組み
AppDynamics では、基礎となる 1 時間分のデータを使用してベースラインが計算されます。ベースラインはすべてのメトリックについて計算できます。ベースラインには2つの主要変数が存在します。
- ベースラインの計算には、データが蓄積された時間が考慮されるべき。
- ベースラインの季節性。
傾向を特定するためのベースラインの使用
パフォーマンスの予測は、時間、曜日、月によって異なります。例:
- 小売アプリケーションは、平日よりも週末にトラフィックが多くなることがあります。
- 給与アプリケーションは、月初や月末により高い負荷が見られることがあります。
この変化を考慮して、ベースラインコンテキストとしてローリング期間を使用できます。ローリング期間は、対象期間中の日次、週次、月次の間隔で取得される現在の時刻からのデータに対するベースラインを確立します。
たとえば、期間が 30 日間に設定された日次の傾向または期間が 90 日間に設定された週次の傾向が使用されるベースラインを作成できます。
日次の傾向は、過去 30 日間の毎日同じ時間に蓄積されたデータからベースラインを計算します。
週次の傾向は、過去 90 日間の同じ時間と曜日に蓄積されたデータからベースラインを計算します。これは、使用可能なデフォルト設定の 1 つです。
月次の傾向は、毎月同じ日の同じ時間に蓄積されたデータからベースラインを計算します。たとえば、1 月 5 日の午前 10 時半の場合、ベースラインは前年(365 日)の毎月 5 日の同じ時間に蓄積されたデータに基づいて作成されます。
ベースラインは、起動してすぐには利用できません。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
| 180 | 2 | 180 | 300 |
10:00
| 300 | 2 | 300 | 780 |
11:00
| 150 | 2 | 150 | 195 |
これらのメトリック値では、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 標準偏差を重大条件として構成できます。
ベースラインを設定するには、次の手順を実行します。
- [Configuration > Baselines] に移動します。
- 使用可能なすべてのベースラインがリストに表示されます。
- デフォルトのベースラインは、日次の傾向です。これは、正常性ルールの作成時に別のベースラインが指定されない場合に正常性ルールにより使用されるベースラインです。
ベースラインリスト内の別のベースラインをデフォルトとして選択するには、[Set as Default ] をクリックします。
デフォルトのベースラインを変更すると、デフォルトに依存している既存の正常性ルールすべての実際のベースラインが変更されることになります。別のベースラインを指定することはありません。このオプションを選択する前に、既存のベースラインと正常性ルールの定義を確認してください。
- 使用する傾向タイプを選択します。
傾向の期間と傾向を設定します。基本期間は、次の 2 つの範囲で使用できます。
- 固定時間範囲:特定の日時から別の日時までの期間。たとえば、ある時間にリリースサイクルがある場合、データコレクションをその時間に制限することができる。
- ローリング時間範囲:最新の X 日数が使用される。こちらの方がより一般的。