ディスカバリーパフォーマンスメトリクス

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:16分
  • ディスカバリーのこの機能拡張は、プローブ / パターンおよびセンサー処理時間におけるパフォーマンスメトリクスを収集し、そのデータを時間をかけて集計します。ロールアップデータを使用して特定の検出のパフォーマンスを監視したり、アップグレード後のバージョン間のパフォーマンスを比較したりすることができます。

    メトリクス

    ディスカバリーには、次のような個々のパフォーマンスメトリクスがあります。
    • プローブおよびパターン処理時間
    • センサー処理時間
    • ディスカバリーパターンの識別および調整エンジン (IRE) 処理時間。この処理時間は既にセンサー処理時間に含まれていますが、パターンペイロードの識別と調整をより詳細に把握するために、ここでは隔離されています。
    ディスカバリーは次の属性の個々のメトリクスをアグリゲートできます。
    • ビルド / バージョン
    • ディスカバリーステータス
    • ターゲット IP アドレス

    メトリクス集計のトリガー方法

    メトリクスロールアップは次のように開始されます。
    • [ビルドごとにアグリゲート (Aggregated by build)]:[ビルドごとのアグリゲートディスカバリープローブとセンサーのメトリクス (Aggregate Discovery Probe And Sensor Metrics By Build)] スケジュール済みジョブによって実装されます。このジョブは現地時間の 0200 に実行されます。
    • [ステータスごとにアグリゲート (Aggregated by status)]:[discovery.complete] または [discovery.cancelled] 登録済みイベントによってトリガーされる、[ステータスごとのロールアッププローブ / センサーメトリクス (Rollup Probe/Sensor Metrics by Status)] スクリプトアクションによって実装されます。
    • [ターゲットごとに集計 (Aggregated by target)]:[discovery.device.complete] 登録済みイベントによってトリガーされる、[ターゲットごとのロールアッププローブ / センサーメトリクス (Rollup Probe/Sensor Metrics by Target)] スクリプトアクションによって実装されます。
    注:
    ディスカバリーの実行が完了前にキャンセルされると、ディスカバリーは IP ターゲットメトリクスアグリゲーションテーブルを更新できません。これは、アグリゲーションをトリガーする discovery.device.complete イベントが実行されないためです。後続の検出がターゲットで正常に実行されると、中断されたディスカバリーの IP ターゲットデータが収集されます。ディスカバリーの実行をキャンセルしても、他のメトリクスのアグリゲーションには影響せず、別々にトリガーされます。

    テーブル

    ディスカバリーパフォーマンスメトリクスデータは次のテーブルに格納されます。
    テーブル 説明
    プローブとセンサーのメトリクス (個別) [discovery_perf_metric_probe_sensor] プローブ / パターン、センサー、および IRE 処理時間の個別のパフォーマンスメトリクスを格納します。
    プローブとセンサーのメトリクス (アグリゲート) [discovery_perf_metric_probe_sensor_rollup] これはメトリクス集計のベーステーブルであり、データ自体を格納しません。ビルドごと、ステータスごと、およびターゲットごとの 3 つのロールアップテーブルすべてがこのテーブルを拡張します。
    プローブとセンサーのメトリクス (ビルドごとに集計) [discovery_perf_metric_probe_sensor_rollup_by_build] プローブ / パターン、センサー、およびビルドとバージョンごとの IRE について集計されたパフォーマンスメトリクスを格納します。
    プローブとセンサーのメトリクス (ステータスごとに集計) [discovery_perf_metric_probe_sensor_rollup_by_status] プローブ / パターン、センサー、およびディスカバリーステータスごとの IRE について集計されたパフォーマンスメトリクスを格納します。
    プローブとセンサーのメトリクス (ターゲットごとにアグリゲート) [discovery_perf_metric_probe_sensor_rollup_by_target] プローブ / パターン、センサー、および IP アドレスごとの IRE について集計されたパフォーマンスメトリクスを格納します。

    ディスカバリーのプロパティ

    パフォーマンスメトリクスのプロパティは、アグリゲーションが発生するかどうかを制御しますが、アグリゲーションに含まれるデータは制御しません。ステータスおよび IP ターゲットデータは次のように収集されます。
    • ステータスのロールアップには常に新しいデータが含まれます。ディスカバリーは、ディスカバリーの実行中にそのディスカバリーステータスについてすべてのプローブとセンサーのデータを継続的に収集し、プローブとセンサーのメトリクス (個別) [discovery_perf_metric_probe_sensor] テーブルにそのデータを格納します。アグリゲーションでは、ステータスロールアップのアグリゲーションプロパティが有効になっている場合に限り、その特定のステータスについて、そのステータスで discovery.cancel イベントと discovery.complete イベントが発生した後ですべてのプローブとセンサーデータがロールアップされます。
    • ディスカバリーは IP ターゲットのデータを継続的に収集し、プローブとセンサーのメトリクス (個別) [discovery_perf_metric_probe_sensor] テーブルにそのデータを格納します。アグリゲーションでは、glide.discovery.perf.metrics.rollup_by_target プロパティが有効になった後で、既存のすべての IP ターゲットデータがロールアップされ、プローブとセンサーのメトリクス (ターゲットごとに集計) [discovery_perf_metric_probe_sensor_rollup_by_target] テーブルにレコードが作成されます。
    次のプロパティがプローブとセンサーのメトリクスの収集を制御します。
    プロパティ 説明
    glide.discovery.perf.metrics.enable_collection パフォーマンスメトリクスの収集を有効にします。
    • タイプ:true | false
    • [デフォルト]: true
    glide.discovery.perf.metrics.rollup_by_build 個々のディスカバリーパフォーマンスメトリクスが、ビルドごとにグループ化するロールアップテーブルにアグリゲートされます。
    • タイプ:true | false
    • [デフォルト]: true
    glide.discovery.perf.metrics.rollup_by_status 個々のディスカバリーパフォーマンスメトリクスが、ディスカバリーステータスごとにグループ化するロールアップテーブルにアグリゲートされます。
    • タイプ:true | false
    • デフォルト:false
    glide.discovery.perf.metrics.rollup_by_target 個々のディスカバリーパフォーマンスメトリクスが、ターゲット IP アドレスごとにグループ化するロールアップテーブルにアグリゲートされます。デフォルトでは、ターゲット IP ごとのアグリゲーションが無効になっている場合でも、ディスカバリーは個々の IP アドレスメトリクスを継続的に収集します。IP ターゲットのアグリゲーションを有効にすると、ディスカバリーにはロールアップテーブルにすべてのターゲットメトリクスを含めます。
    • タイプ:true | false
    • デフォルト:false

    プローブ、センサー、およびパターンのディスカバリーパフォーマンスメトリクスの表示

    デフォルトでは、ディスカバリーは処理時間を測定することにより、個々のプローブ、センサー、およびパターンのパフォーマンスを追跡します。パターンを使用する場合、ディスカバリーは識別と調整エンジン (IRE) の処理時間を想定します。

    始める前に

    必要なロール:discovery_admin、admin

    手順

    1. 次のように移動する。 All (すべて) > Discovery > ディスカバリーパフォーマンスメトリクス > プローブ/センサー (個人).
    2. ディスカバリーステータスでリストをソートして、特定のディスカバリーで実行されたプローブとパターンのリストを表示します。
    3. リスト内の各プローブ、センサー、またはパターンのメトリクスを表示したり、レコードを開いたりすることができます。
      プローブとセンサーのメトリクスデータはすべて読み取り専用です。
      個別のプローブとセンサーのメトリクス
      [プローブとセンサーのメトリクス (個人)] フォームには次のフィールドがあります。
      フィールド ラベル フィールド名 説明
      ビルド/バージョン build_version ディスカバリーが実行されたビルド
      ディスカバリーステータス discovery_status メトリクスが収集されたディスカバリーステータスの ID 番号
      ターゲット IP アドレス target_ip この検出のターゲットの IP アドレス。
      ECC キュー入力 ecc_queue_input ECC キューテーブル内の特定の ECC 入力レコードを識別します。
      ECC キュートピック* ecc_queue_topic プローブを実行する MID サーバー内の Java クラスを識別します。
      ECC キュー名* ecc_queue_name このアグリゲーションでパフォーマンスが評価されたプローブ / パターンを識別します。
      プローブ* プローブ このディスカバリーに使用されたプローブの名前
      プローブ処理時間 probe_time インスタンスに送り返されるペイロードのビルドを含む、MID サーバーとターゲットのインタラクション時間。時間はミリ秒単位です。
      IRE 処理時間 ire_time インスタンスのパターンペイロードを処理するために識別および調整エンジン (IRE) が要する時間。パターンで使用されているセンサー時間の一部が表示されるため、IRE 時間は便利です。時間はミリ秒単位です。
      センサー処理時間 sensor_time ディスカバリーのためにセンサーがインスタンスのペイロードを処理するのに費やした時間。時間はミリ秒単位です。
      * ディスカバリーのためのメトリクスの収集時に、プローブ / パターンと付属センサーを一意に識別するために使用されます。

    ビルドごとに収集されたディスカバリーパフォーマンスメトリクスの表示

    ビルドデータごとのロールアップを使用して、24 時間以内の検出について、ディスカバリーコンポーネントの処理時間が整合するようにします。アップグレード前後の集計ビルドデータを表示し、古いバージョンと新しいバージョンのパフォーマンスを比較します。集計されたパフォーマンスデータはすべて読み取り専用です。

    始める前に

    必要なロール:discovery_admin、admin

    手順

    1. 次のように移動する。 All (すべて) > Discovery > ディスカバリーパフォーマンスメトリクス > プローブ/センサー (ビルドごとにロールアップ).
    2. リストを [ビルド/バージョン] でソートします。
      ビルドごとに集計されたパフォーマンスデータのリストのフィルタリング
    3. 特定のビルドごとにフィルタリングして、そのビルドでディスカバリーを実行したプローブとパターンについて集計された処理時間を表示します。
    4. レコードを開くと、選択したビルドのプローブ / パターンの統計情報が表示されます。
      このフォームには、リストに表示されない追加のフィールドが表示されます。ロールアップ計算は 24 時間にわたるもので、毎晩 0200 に開始されます。
    5. ビルドごとのロールアップのフォームに表示されるその他のメトリクスについては、パフォーマンスアグリゲーションデータのテーブルを参照してください。

    ステータスごとに収集されたディスカバリーパフォーマンスメトリクスの表示

    ステータスデータごとのロールアップを使用して、プローブ / パターンとセンサーの処理時間が特定のディスカバリーに対して一貫するようにします。集計されたパフォーマンスデータはすべて読み取り専用です。

    始める前に

    必要なロール:discovery_admin、admin

    このタスクについて

    手順

    1. 次のように移動する。 All (すべて) > Discovery > ディスカバリーパフォーマンスメトリクス > プローブ/センサー (ステータスごとにロールアップ).
    2. [ディスカバリーステータス] でリストをフィルタリングして、特定のディスカバリー中に実行されたプローブとパターンについて集計された処理時間を表示します。
      ステータスごとに集計されたパフォーマンスデータのリストのフィルタリング
    3. 特定のステータスでフィルタリングして、そのステータスで実行されたプローブとパターンで利用可能なメトリクスを表示します。
    4. レコードを開くと、選択したステータスのプローブ / パターンの統計情報が表示されます。
      このフォームには、リストに表示されない追加のフィールドが表示されます。ロールアップは、完了済みまたはキャンセル済みのステータスに対してのみ作成されます。
    5. ステータスごとのロールアップのフォームに表示されるその他のメトリクスについては、パフォーマンスアグリゲーションデータのテーブルを参照してください。

    IP アドレスごとに収集されたディスカバリーパフォーマンスメトリクスの表示

    ターゲットデータごとのロールアップを使用して、プローブ / パターンとセンサーの処理時間が特定の IP アドレスの各ディスカバリーに対して一貫するようにします。集計されたパフォーマンスデータはすべて読み取り専用です。

    始める前に

    必要なロール:discovery_admin、admin

    手順

    1. 次のように移動する。 All (すべて) > Discovery > ディスカバリーパフォーマンスメトリクス > プローブ/センサー (ターゲットごとにロールアップ).
    2. [ターゲット IP アドレス] でリストをソートします。
      ターゲット IP アドレスごとに集計されたパフォーマンスデータのリストのフィルタリング
    3. 特定の IP アドレスごとにフィルタリングして、その IP アドレスのディスカバリーを実行したプローブとパターンについて集計された処理時間を表示します。
    4. レコードを開くと、特定の IP アドレスについて選択したプローブ / パターンについての統計情報が表示されます。
      このフォームには、リストに表示されない追加のフィールドが表示されます。IP ディスカバリーが正常に完了した後、ロールアップが実行されます。
    5. ターゲットごとのロールアップのフォームに表示されるその他のメトリクスについては、パフォーマンスアグリゲートデータのテーブルを参照してください。

    ディスカバリーのパフォーマンスメトリクスについて集計されるデータ

    ディスカバリーのパフォーマンスメトリクスは、ディスカバリーが実行されるたびにプローブ、パターン、センサーのデータを蓄積できます。ディスカバリーは処理時間を計算し、ステータス、ターゲット、またはビルドの各ロールアッププロファイルに対してコンポーネントが実行された回数をインクリメントします。集計されたパフォーマンスデータはすべて読み取り専用です。

    ロールアップフォームのサンプル

    これはプローブおよびセンサーメトリクスの集計レコードの例です。ここに表示されるメトリクスフィールドが各アグリゲーションに使用されます。
    図 : 1. ステータスごとのロールアップフォームのサンプル
    ステータスごとのロールアップフォームのサンプル

    パフォーマンスフレームワークのアグリゲートデータ

    特に記載されている場合を除き、次のフィールドはすべてのアグリゲーションレコードに共通です。
    フィールド ラベル フィールド名 説明
    ビルド/バージョン build_version インスタンスで実行中のビルドの名前。この名前は ServiceNow プラットフォームのバージョン、パッチレベル、およびリリース日を示します。
    ディスカバリーステータス discovery_status このアグリゲーションのディスカバリーステータスレコードの ID 番号。
    注:
    このフィールドはステータスごとのロールアップのフォームにのみ表示されます。
    ターゲット IP アドレス target_ip_address このディスカバリーのターゲットの IP アドレス。
    注:
    このフィールドはターゲットごとのロールアップのフォームにのみ表示されます。
    集計カットオフ aggregation_cutoff カットオフ時間はロールアッププロファイルによって異なります。
    • [ビルドごと (By-build)]:デフォルトでは毎日 02:00 に実行されます。
    • [ステータスごと (By-status)]:そのディスカバリーステータスの前回の集計の終了時間。前回そのステータスについて [discovery.complete] または [discovery.cancelled] が実行されたときに実行された可能性があります。
    • [ターゲット (By-target)]:そのターゲット IP アドレスの前回のアグリゲーションの終了時間。前回その IP アドレスについて [discovery.device.complete] が実行されたときに実行された可能性があります。
    ECC キュートピック* ecc_queue_topic プローブを実行する MID サーバー内の Java クラスを識別します。
    ECC キュー名* ecc_queue_name このアグリゲーションでパフォーマンスが評価されたプローブ / パターンを識別します。
    プローブ* プローブ このディスカバリーに使用されたプローブの名前
    プローブ時間 (数) probe_time_count 所定のロールアッププロファイルについてプローブが実行された回数
    プローブ時間 (平均) probe_time_average プローブがターゲットのデータを収集し、所定のロールアッププロファイルのペイロードをフォーマットするのに費やした平均時間
    プローブ時間 (最小) probe_time_min プローブがターゲットのデータを収集し、所定のロールアッププロファイルのペイロードをフォーマットするのに費やした最小時間
    プローブ時間 (最大) probe_time_max プローブがターゲットのデータを収集し、所定のロールアッププロファイルのペイロードをフォーマットするのに費やした最大時間
    プローブ時間 (合計) probe_time_total プローブがターゲットのデータを収集し、所定のロールアッププロファイルのペイロードをフォーマットするのに費やした合計時間
    センサー時間 (数) sensor_time_count 所定のロールアッププロファイルについてセンサーがペイロードを処理した回数
    センサーの時間 (平均) sensor_time_average 所定のロールアッププロファイルについて、センサーがインスタンスのペイロードを処理するために費やした平均時間
    センサー時間 (最小) sensor_time_min 所定のロールアッププロファイルについて、センサーがインスタンスのペイロードを処理するために費やした最小時間
    センサーの時間 (最大) sensor_time_max 所定のロールアッププロファイルについて、センサーがインスタンスのペイロードを処理するために費やした最大時間
    センサー時間 (合計) sensor_time_total 所定のロールアッププロファイルについて、センサーがインスタンスのペイロードを処理するために費やした合計時間
    IRE 時間 (数) ire_time_count 所定のロールアッププロファイルについて、識別および調整エンジン (IRE) によってパターンのペイロードが処理された回数
    IRE 時間 (平均) ire_time_average 所定のロールアッププロファイルについて、パターンのペイロードの IRE 処理に費やされた平均時間
    IRE 時間 (最小) ire_time_min 所定のロールアッププロファイルについて、パターンのペイロードの IRE 処理に費やされた最小時間
    IRE 時間 (最大) ire_time_max 所定のロールアッププロファイルについて、パターンのペイロードの IRE 処理に費やされた最大時間
    IRE 時間 (合計) ire_time_total 所定のロールアッププロファイルについて、パターンのペイロードの IRE 処理に費やされた合計時間
    * これらの値は共に、ディスカバリーに使用されるプローブ / センサーのペア (「プローブ実行」) を一意に識別します。