スクリプト化されたデータ収集の概要

最終更新日: 24 年 2020 月 XNUMX 日

はじめに

一般に、SNMP、WMI、WEBPAGEなどの事前定義された収集方法は、独自のカスタムデータソースでLogicMonitorを拡張するのに十分です。 ただし、場合によっては、SCRIPTメカニズムを使用して、到達が困難な場所からパフォーマンスメトリックを取得する必要があります。 SCRIPT収集方法の一般的な使用例は次のとおりです。

  • 任意のプログラムを実行し、その出力をキャプチャする
  • ポーリングの前にセッションベースの認証を必要とするHTTPAPIの使用
  • 複数のSNMPノードまたはWMIクラスからのデータを単一のデータソースに集約する
  • プロセスの実行時間または終了コードの測定

スクリプト収集アプローチ

スクリプトを介してカスタム監視を作成するのは簡単です。 仕組みの概要は次のとおりです。

  1. 関心のある数値メトリックを取得するコードを記述します。テキストベースの監視データがある場合は、 スクリプト化されたEventSource.
  2. メトリックを標準出力に出力します。通常は、XNUMX行にXNUMXつずつキーと値のペア(名前=値など)として出力します。
  3. 各メトリックに対応するデータポイントを作成し、データポイントポストプロセッサを使用して各キーの値をキャプチャします。
  4. アラートのしきい値を設定したり、データポイントに基づいてグラフを生成したりします。

スクリプト収集モード

スクリプトベースのデータ収集は、「アトミック」モードまたは「アグリゲート」モードのいずれかで動作できます。 これらのモードを、それぞれコレクションタイプ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に限定されますが、外部スクリプトは任意の言語で作成することも、バイナリを直接実行することもできます。
記事上で