外部ソースの監視
テレメトリ、スクリプト、ファイル、外部 API を使用して、組み込みコレクターの外部から取得したデータを NetCrunch がどのように監視するかを説明します。
目的と範囲
Monitoring External Sources では、SNMP、WMI、ネイティブデバイスセンサーなどの組み込みコレクターによって生成されないデータを、NetCrunch がどのように収集および監視するかについて説明します。
外部ソースとは、監視データを提供するシステム、サービス、またはインターフェイスであり、そのデータを NetCrunch で使用する前に、カスタム取得または変換が必要なものを指します。
例:
- メトリックをエクスポートする外部アプリケーション
- カスタムスクリプトおよびコマンドラインツール
- 他のシステムによって生成されたファイル
- REST および HTTP ベースの API
- サードパーティ製の監視エージェントまたはエクスポーター
この章では、データの発生元にかかわらず、外部データがどのように NetCrunch の監視データになるかについて説明します。
概念モデル
外部ソースの監視には、常に次の 2 つの異なる要素が関係します。
- データの取得元 – 取得または受信方法
- データが表す内容 – counters および status objects
これらの要素は意図的に分離されています。
Counters と statuses は、場所やソースではなく、測定対象の識別情報と状態を表します
スコープは、データが生成される sensor および node context によって解決されます
外部監視方法
NetCrunch は、外部ソースを監視するための複数の相補的な方法をサポートしています。それぞれの方法は、異なる統合シナリオに対応します。
Telemetry (Receive Data)
Telemetry は、外部システムが NetCrunch にデータを能動的に送信するプッシュベースのモデルです。
次の場合に Telemetry を使用します。
- データ生成元を管理している
- ほぼリアルタイムの配信が必要である
- ポーリングが適切でない、または実行できない
主要コンポーネント:
- Telemetry Node
- Data Receiver または Data Sensor
- Local または cloud endpoints
推奨されるデータ形式:
- NetCrunch Native Data Formats
Custom Data Parsers を使用して変換すれば、他の形式も受け入れられます。
Scripts (Execute and Collect)
スクリプトベースの監視では、コードを実行してその出力を収集します。
次の場合に Scripts を使用します。
- データが CLI またはシェル経由でのみ利用可能である
- SSH、PowerShell、またはローカルでの実行が必要である
- 対象システムの近くでロジックを実行する必要がある
サポートされるシナリオ:
- リモート SSH スクリプト
- PowerShell スクリプト
- NetCrunch Server 上のローカルスクリプト
スクリプトの出力には、次の形式を使用できます。
- NetCrunch Native Data Formats
- Custom Data Parsers で解析される任意の形式
Data Retrieval (Pull External Data)
Data Retrieval は、NetCrunch が標準プロトコルを介して外部データを取得する、ポーリングベースのモデルです。
次の場合にこの方法を使用します。
- データがファイルまたはエンドポイントとして公開されている
- 定期的なポーリングが許容される
- 直接実行が必要ない
サポートされるプロトコルには、次のものがあります。
- HTTP および HTTPS
- FTP、SFTP、TFTP
- SSH コマンド出力
- Windows または SMB ファイルアクセス
取得したデータは、次のように処理できます。
- Native Data Formats を使用して直接解釈する
- Custom Data Parsers を使用して変換する
REST and HTTP APIs
多くの最新システムでは、REST または HTTP API を介して監視データを公開しています。
NetCrunch は、次をサポートしています。
- カスタム HTTP メソッド
- クエリパラメーター
- ヘッダーおよび認証
- Cookie およびセッション処理
REST API は通常、次の機能と組み合わせて使用されます。
- Native Data Formats(推奨)
- Custom Data Parsers で解析される JSON、XML、またはテキスト
REST and HTTP monitoring の詳細を読む...
External Event Sources
メトリックおよびステータスの収集に加えて、NetCrunch は、継続的な測定値ではなく、個別の発生事象を表す外部イベントを受信できます。
External Event Sources は通常、次の目的で使用されます。
- ログベースのアラート
- セキュリティおよび監査イベント
- インフラストラクチャ通知
- アプリケーションおよびプラットフォームイベント
サポートされる外部イベントソースには、次のものがあります。
- テキストログファイル
- Windows Event Log
- Syslog
- SNMP traps and notifications(SNMP v3 を含む)
- Webhook および HTTP ベースのメッセージ
- OTLP (OpenTelemetry) を介して配信されるテレメトリイベント
外部イベントは取り込まれ、分類され、ノードおよびサービスと関連付けられます。これにより、次のことが可能になります。
- アラートをトリガーする
- ノードおよびサービスのステータスに寄与する
- 保存、フィルタリング、検索を行う
イベントの取り込みでは、メトリックの抽出ではなく、イベントの意味とコンテキストに重点が置かれます。
External Event Sources の詳細を読む...
データ形式と変換
使用する監視方法にかかわらず、外部データは NetCrunch counters および status objects に変換する必要があります。
Native Data Formats
NetCrunch Native Data Formats は、counters および statuses を直接かつ明示的に定義する方法を提供します。
その特徴は次のとおりです。
- 安定しており、バージョンの影響を受けにくい
- 取り込み方法に依存しない
- 可能な限り推奨される
外部ソースが Native Data Formats でデータを生成できる場合、解析は必要ありません。
Custom Data Parsers
Custom Data Parsers は、受信データを Native Data Formats で提供できない場合に使用します。
次のことが可能です。
- XML、JSON、HTML、またはテキストから値を抽出する
- 任意の構造を counters および statuses に変換する
- 宣言型セレクターまたはスクリプトを使用してロジックを適用する
Custom Data Parsers は変換レイヤーであり、データソースではありません。
通常、次の機能と組み合わせて使用されます。
- Data Retrieval
- スクリプトベースの監視
- REST and HTTP APIs
適切な方法の選択
次のガイドラインは、適切な監視方法を選択する際に役立ちます。
-
外部システムからデータをプッシュできるか
→ Telemetry を使用します -
NetCrunch でコードを実行してデータを取得できるか
→ Scripts を使用します -
データがファイルまたはネットワークエンドポイントを介して公開されているか
→ Data Retrieval を使用します -
データを Native Data Formats で生成できるか
→ Native Data Formats を優先します -
データ形式が任意形式またはレガシー形式か
→ Custom Data Parsers を使用します -
個別の通知またはログを取り込んでいるか
→ External Event Sources を使用します
まとめ
Monitoring External Sources により、NetCrunch は事実上あらゆるシステムまたはデータ生成元と統合できます。
主な原則:
- 監視方法によって、データの取得方法が決まる
- データ形式によって、測定値の表現方法が決まる
- Counters および statuses はソースではなく識別情報を表す
- イベントはメトリックではなく個別の発生事象を表す
- スコープは sensor および node context によって解決される
- Native Data Formats が推奨される
- Custom Data Parsers により、ネイティブ形式以外の形式との互換性が実現する
この分離により、外部監視統合の柔軟性、拡張性、長期的な保守性が確保されます。