スクリプト化されたデータ収集の概要
最終更新日:24年2020月XNUMX日序言
一般に、SNMP、WMI、WEBPAGEなどの事前定義された収集方法は、独自のカスタムデータソースでLogicMonitorを拡張するのに十分です。 ただし、場合によっては、SCRIPTメカニズムを使用して、到達が困難な場所からパフォーマンスメトリックを取得する必要があります。 SCRIPT収集方法の一般的な使用例は次のとおりです。
- 任意のプログラムを実行し、その出力をキャプチャする
- ポーリングの前にセッションベースの認証を必要とするHTTPAPIの使用
- 複数のSNMPノードまたはWMIクラスからのデータを単一のデータソースに集約する
- プロセスの実行時間または終了コードの測定
スクリプト収集アプローチ
スクリプトを介してカスタム監視を作成するのは簡単です。 仕組みの概要は次のとおりです。
- 関心のある数値メトリックを取得するコードを記述します。テキストベースの監視データがある場合は、 スクリプト化されたEventSource.
- メトリックを標準出力に出力します。通常は、XNUMX行にXNUMXつずつキーと値のペア(名前=値など)として出力します。
- 各メトリックに対応するデータポイントを作成し、データポイントポストプロセッサを使用して各キーの値をキャプチャします。
- アラートのしきい値を設定したり、データポイントに基づいてグラフを生成したりします。
スクリプト収集モード
スクリプトベースのデータ収集は、「アトミック」モードまたは「アグリゲート」モードのいずれかで動作できます。 これらのモードを、それぞれコレクションタイプSCRIPTおよびBATCHSCRIPTと呼びます。
標準のSCRIPTモードでは、収集スクリプトは、各収集間隔で各DataSourceインスタンスに対して実行されます。 意味:XNUMXつのインスタンスを検出したマルチインスタンスデータソースの場合、収集スクリプトは収集間隔ごとにXNUMX回実行されます。 これらのデータ収集の「タスク」はそれぞれ、互いに独立しています。 したがって、収集スクリプトは次の行に沿って出力を提供します。
key1: value1
key2: value2
key3: value3
次に、XNUMXつのデータポイントを作成する必要があります。キーと値のペアごとにXNUMXつです。
BATCHSCRIPTモードでは、検出されたインスタンスの数に関係なく、収集スクリプトは収集間隔ごとにXNUMX回だけ実行されます。 これは、特にデータを収集する必要のあるインスタンスが多数ある場合に、より効率的です。 この場合、収集スクリプトは次のような出力を提供する必要があります。
instance1.key1: value1
instance1.key2: value2
instance1.key3: value3
instance2.key1: value1
instance2.key2: value2
instance2.key3: value3
SCRIPT収集と同様に、出力値を収集するにはXNUMXつのデータポイントを作成する必要があります。
スクリプトコレクションの種類
LogicMonitorは、組み込みGroovy、組み込みPowerShell、および外部のXNUMX種類のスクリプトベースのデータソースをサポートします。 それぞれのタイプには、環境に応じて長所と短所があります。
- 埋め込まれたGroovyスクリプト:すべてのコレクター間でのクロスプラットフォームの互換性、拡張機能のための多数の外部クラスへのアクセス
- 組み込みPowerShellスクリプト:Windowsコレクターでのみ使用できますが、PowerShellコマンドレットを介してデータを公開するシステムからの収集が可能です。
- 外部スクリプト:通常は特定のコレクターOSに限定されますが、外部スクリプトは任意の言語で作成することも、バイナリを直接実行することもできます。