予測分析とアラート
Forecast には、最近のトレンドが設定されたしきい値に近づいている監視対象カウンターと、それぞれがそのしきい値を超えると予測される日付が表示されます。NetCrunch の履歴トレンドデータを早期警告に変換するため、ディスク容量がいっぱいになったり、メモリリークが発生したりして重大なアラートがトリガーされる前に対処できます。
カウンターに Predictive Threshold アラートが設定され、最近の履歴に、予測期間内に設定された制限値へ到達する統計的に有効なトレンドが示されている場合、そのカウンターが Forecast に表示されます。Forecast は、グローバルな Alerts › Forecast ページ(選択したビューの範囲内)と、各ノードの Alerts › Forecast タブで利用できます。
設定方法
カウンターは、Predictive Threshold アラートが設定されている場合に予測対象になります。これらの多くは monitoring packs に含まれています。パックにはデフォルトのアラートセットとして予測しきい値を含めることができるため、そのパックが監視するすべてのノードに自動的に適用されます。個々のカウンターのしきい値エディターで、予測しきい値を追加または調整することもできます。
- カウンターのしきい値/アラート設定を開きます。
- Predictive Threshold タイプのしきい値を追加します。
- limit と方向を設定します。方向には、raising(値が上昇してしきい値を超える場合。例:使用中のメモリが
>90%)または falling(値が下降してしきい値を下回る場合。例:ディスクの空き容量が<10%)があります。 - prediction period を設定します。これは、トレンドが制限値に到達する可能性がある将来の日数です。
- Prediction quality を設定します。これは、アラートが発生するために必要な最低限のトレンド品質です(Low / Normal / High)。
予測アナライザーはスケジュールに従って(デフォルトでは毎日)再計算を行います。そのため、トレンドを近似するのに十分な履歴が蓄積された後、次回の実行時にしきい値が Forecast に表示されます。
動作の仕組み
各予測しきい値について、アナライザーは Trend Database からカウンターの履歴を読み取り、least-squares linear regression(最小二乗線形回帰)を適用します。回帰式は value ≈ α + β·t で、α(切片)は分析対象ウィンドウの開始時点の値、β(傾き)はサンプルごとの平均変化量を表します。回帰直線を将来に延長し、しきい値に到達する時点を projected breach time として求めます。これは、違反日と ETA として表示されます。回帰直線の周囲にある ±1 残差標準偏差の帯域を使用し、データのノイズ範囲内にある「違反」を除外します。
各行の sparkline には、観測されたトレンド(実線)が予測(色付き)として延長され、赤い違反マーカーまで表示されます。これを破線のしきい値線と比較でき、カーソル位置には現在の値が表示されます。
適した候補と適さない候補
Forecast は、ゆっくり変化し、おおむね単調に推移するメトリック、つまり「同じ傾向が続く」と限界に達するものに適しています。
- 適した候補: ディスクおよびボリュームの容量(使用済みまたは空き)、データベースおよびテーブルのサイズ、ログおよびファイルの増加量、コミット済みまたは使用可能なメモリ、inode 使用量、ライセンス数またはセッション数。
- 適さない候補: 変動が大きい、または周期的なメトリック(CPU 使用率、ネットワークスループット、リクエスト/トランザクションレート、キュー長)。これらは負荷に応じて変動するため、固定された制限値に向かってトレンドを形成することはほとんどありません。
モデルは単一の直線であるため、季節性は考慮されません。日次または週次の周期(営業時間、夜間ジョブ、週末の低下)があるカウンターは直線にうまく適合しません。そのため品質が低く、誤解を招くことの多い予測になり、除外されます。周期的な負荷を予測するのではなく、その負荷によって消費される低速な基盤リソース(例:ディスク容量)を予測してください。
信頼度と品質
「quality」という語を使用する、関連しているものの異なる2つの設定があります。
- Prediction quality(しきい値で設定)は、アラートが発生する前にトレンドが満たす必要のある基準です。Low、Normal、High のいずれかを指定します。これは、NetCrunch がどの程度選択的に判定するかを制御します。
- Confidence(Forecast 列)は、特定の予測に対して検出されたトレンドが実際にどの程度強いかを示します。High、Medium、Low のいずれかで表示されます。
どちらも、直線がデータをどの程度適切に表しているかを測定する 0~1 の範囲の trend-quality index に基づいています。この指標は、次の要素を加重して組み合わせたものです。R²(直線で説明できる変動の割合)、residual spread(各点が直線上にどの程度密集しているか)、slope significance(β が偶然ではなく実際の傾きであることを判定する t 検定)、homoscedasticity(散らばりが均一で、扇状に広がっていないことを判定する Breusch–Pagan 検定)、normality(残差がランダムノイズのように見えることを判定する Shapiro–Wilk 検定)、data sufficiency(対象ウィンドウに十分なサンプル数と充填率があること)。Forecast では、約 0.75 以上の指標値は High、およそ 0.35~0.75 は Medium、それ未満は Low として表示されます。ノイズが少なく安定して変化する系列は 1 に近い値になります。一方、ノイズが多い、曲線的、または周期的な系列は低い値となり、予測不可能として扱われます。
Predictive Threshold を使用したデフォルトアラート
Monitoring Packs:
- Windows\Disk, Windows\Memory
- Linux\Disk, Linux\Memory
- Solaris\Disk, Solaris\Memory
- Mac Os X\Disk, Mac Os X\Memory
- BSD\Disk, BSD\Memory
- VMware\Disk, VMware\Memory
- Proxmox\Disk, Proxmox\Memory
各 Monitoring Pack には、次の2つのアラートがあります。
- Volume Free Space will be low soon (%Free Space < 20)(1~30日以内にディスクの空き容量が 20% 未満になります)
- Volume Free Space will be very low soon (%Free Space < 5)(1~30日以内にディスクの空き容量が 5% 未満になります)