Conditionは「何を異常とみなすか」を定義する仕組みです。監視の実体はここにあります。Policyの中で設定し、成立したときの動作もあわせて指定します。
Conditionとは
Conditionは、監視する対象と、異常とみなす基準の組み合わせです。
例えば「Cドライブの空き容量が10%を下回る」という条件を設定すると、その状態になったデバイスで検知が発生します。検知に対して、通知を送る、スクリプトを実行する、チケットを起票するといった動作を紐づけます。
Conditionが成立した状態は、デバイス詳細画面のHealth issuesに表示され、ヘルスステータスにも反映されます。
Conditionを設定する場所
ConditionはPolicyの中で設定します。デバイス個別ではありません。
この構造には理由があります。同じ用途のデバイスには同じ監視基準を適用すべきであり、デバイスごとに設定していては一貫性が保てないためです。特定のデバイスだけ監視を変えたい場合は、Policyを分けるか、デバイス単位の上書きを使います。
主なConditionの種類
リソース(CPU・メモリー・ディスク)
最も基本的な監視です。使用率や空き容量が基準を超えた状態を検知します。
継続時間を指定できる点が重要です。瞬間的にCPU使用率が100%になることは正常な動作でも起こります。「10分以上継続した場合」のように条件を付けることで、意味のある検知にできます。
サービスとプロセス
指定したサービスが停止した、プロセスが起動していない、といった状態を検知します。
業務アプリケーションのサービスを監視対象にすると、利用者からの連絡より先に障害を把握できます。
Windowsイベント
イベントログに特定のIDやソースの記録が出たことを検知します。
ハードウェア障害の予兆、ディスクエラー、認証の失敗といった事象を捉えられます。ただし対象を絞らないと大量の検知が発生します。
スクリプトの実行結果
スクリプトを実行し、その結果に応じて検知します。標準の項目では監視できない独自の条件を作る手段です。
実装例はスクリプトの実行方法とConditionとの連携で扱います。
アンチウイルスの状態
保護が無効になっている、定義ファイルが古い、脅威が検出されたといった状態を検知します。
セキュリティー上最も優先度の高い監視項目です。詳細はアンチウイルスの管理と監視を参照してください。
その他
パッチの未適用、バックアップの失敗、Custom Fieldsの値、ソフトウェアのインストール状況なども条件にできます。
Conditionに紐づく動作
検知したときに何をするかを指定します。
| 動作 | 使いどころ |
|---|---|
| 通知を送る | 人が判断して対応する必要がある事象 |
| スクリプトを実行する | 対応が定型化できる事象 |
| チケットを起票する | 対応の記録を残したい事象 |
| 状態を記録するだけ | 傾向を把握したいが個別対応は不要な事象 |
全ての検知に通知を付ける必要はありません。通知を付けすぎることが、アラートが無視される最大の原因です。
自動対応の例としては、ディスク容量が逼迫したときに一時ファイルを削除するスクリプトを実行する、といった設定が考えられます。人手を介さず解消できる事象は自動化すべきです。
設定してはいけないConditionの型
運用が破綻する典型的な設定があります。
| 設定 | 問題 |
|---|---|
| 継続時間を指定しないリソース監視 | 瞬間的な変動で大量に検知する |
| 対象を絞らないイベントログ監視 | 正常時にも記録される事象で検知する |
| 全ての検知に通知を付ける | 通知が多すぎて誰も読まなくなる |
| 対応方法が決まっていない項目の監視 | 検知しても何もできず、放置される |
4番目が見落とされがちです。監視項目を増やす前に、「検知したら誰が何をするか」を決めてください。答えられない項目は、まだ監視すべきではありません。
段階的に増やす
導入時に監視項目を作り込みすぎないでください。次の順で増やすことをおすすめします。
- 止まったら業務が止まるもの(サーバーの死活、基幹サービス)
- 放置すると障害になるもの(ディスク容量、バックアップ失敗)
- セキュリティーに関わるもの(アンチウイルス、パッチ未適用)
- 傾向を把握したいもの(リソースの推移)
1と2だけで運用を始め、慣れてから3と4を足す方が定着します。