Docs » Splunk Observability Cloud でサポートされているインテグレーション » Collectorコンポーネント: レシーバー » Windowsパフォーマンス・カウンターレシーバー

Windowsパフォーマンス・カウンターレシーバー 🔗

The Windows Performance Counters receiver allows the Splunk Distribution of the OpenTelemetry Collector to collect configured system, application, or custom performance counter data from the Windows Registry. The supported pipeline type is metrics. See パイプラインでデータを処理する for more information.

注釈

Windowsパフォーマンス・カウンター・レシーバーはWindowsホストでのみ動作します。

Windowsパフォーマンスカウンターレシーバーは、SmartAgentモニター Windows Performance Counters (deprecated) を置き換えます。これは、Telegraf Windows Performance Counters Input Plugin をベースとし、PDHインターフェイス を使用します。

はじめに 🔗

以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:

  1. Deploy the Splunk Distribution of the OpenTelemetry Collector to your Windows host platform as described in インストーラ・スクリプトを使用して Collector for Windows をインストールします。.

  2. 次のセクションで説明するように、Windowsパフォーマンス・カウンター・レシーバーを設定します。

  3. Collector を再起動します。

サンプル構成 🔗

Windows Performance Counters レシーバーをアクティブにするには、Collector 構成ファイルの receivers セクションに windowsperfcounters エントリーを追加します。例:

receivers:
  windowsperfcounters:
    metrics:
      bytes.committed:
        description: the number of bytes committed to memory
        unit: By
        gauge:
    collection_interval: 30s
    perfcounters:
    - object: Memory
      counters:
        - name: Committed Bytes
          metric: bytes.committed

設定を完了するには、設定ファイルの service セクションの metrics パイプラインに、レシーバーを含めます:

service:
  pipelines:
    metrics:
      receivers:
        - windowsperfcounters

Windows パフォーマンス・カウンターからメトリクスを収集するには、例のように metrics フィールドを使用してメトリクスを定義する必要があります。その後、counters.metric フィールドから定義したメトリクスを参照できます。

利用可能なパフォーマンス・カウンターを見る 🔗

利用可能なパフォーマンス・カウンターのリストを見るには、Windows PowerShellまたはWindowsパフォーマンスモニターを使用します。

PowerShellで以下のコマンドを実行し、すべてのパフォーマンス・カウンターセットをリストします:

Get-Counter -ListSet *

各パフォーマンス・カウンターセットのインスタンスを一覧表示するには、以下のコマンドを実行し、<perf_object_name> を検索したいインスタンス名に置き換えます:

Get-Counter -List "<perf_object_name>"

次のことに注意してください:

  • If a specific performance counter can’t be accessed at startup, the receiver emits a warning and continues execution.

  • OSの設定が異なるため、システムによってはパフォーマンスカウンターが存在しない場合があります。

高度な設定 🔗

収集間隔とカウンターを設定する 🔗

収集間隔とスクレイピングするパフォーマンス・カウンターを設定できます。例:

windowsperfcounters:
  collection_interval: <duration>
  initial_delay: <duration>
  metrics:
    <metric name 1>:
      description: <description>
      unit: <unit type>
      gauge: null
    <metric name 2>:
      description: <description>
      unit: <unit type>
      sum: null
      aggregation: <cumulative or delta>
      monotonic: <true or false>
  perfcounters:
  - object: <object name>
    instances:
      - <instance name>
    counters:
      - name: <counter name>
        metric: <metric name>
        attributes:
        <key>: <value>

異なる収集間隔でスクレイプする 🔗

以下の例は、ターゲットによって異なる収集間隔を使用してパフォーマンス・カウンターをスクレイピングする方法を示しています:

receivers:
  windowsperfcounters/memory:
    metrics:
      bytes.committed:
        description: Number of bytes committed to memory
        unit: By
        gauge:
    collection_interval: 30s
    perfcounters:
      - object: Memory
        counters:
          - name: Committed Bytes
            metric: bytes.committed

  windowsperfcounters/processor:
    collection_interval: 1m
    metrics:
      processor.time:
        description: CPU active and idle time
        unit: "%"
        gauge:
    perfcounters:
      - object: "Processor"
        instances: "*"
        counters:
          - name: "% Processor Time"
            metric: processor.time
            attributes:
              state: active
      - object: "Processor"
        instances: ["0", "1"]
        counters:
          - name: "% Idle Time"
            metric: processor.time
            attributes:
              state: idle

  # ...

service:
  pipelines:
    metrics:
      receivers: [windowsperfcounters/memory, windowsperfcounters/processor]

Configure instances 🔗

インスタンスは、パフォーマンス・データを生成するあらゆるエンティティです。インスタンスは1つ以上のカウンター値を持つことができます。

レシーバーは instances フィールドを通じて以下の値をサポートします:

解釈

Not specified

これは、カウンターにインスタンスがない場合にのみ有効な値です。

"*"

All instances, excluding _Total

"_Total"

他のすべてのインスタンスの値を集約した 「合計 「インスタンス。詳しくは、インスタンスの動作と集計カウンターの合計 を参照してください。

"instance1"

シングルインスタンス

["instance1", "instance2", ...]

インスタンスのセット

["_Total", "instance1", "instance2", ...]

総インスタンスを含むインスタンスのセット

インスタンスの動作と集計カウンターの合計 🔗

_Total インスタンスのドロップを避けるには、以下の例のように、レシーバーが独自のメトリックで個別に収集するように設定します:

windowsperfcounters:
  metrics:
    processor.time.total:
      description: Total CPU active and idle time
      unit: "%"
      gauge:
  collection_interval: 30s
  perfcounters:
    - object: "Processor"
      instances:
        - "_Total"
      counters:
        - name: "% Processor Time"
          metric: processor.time.total

警告

instance の値 "*" を使用する場合、カウンターが _Total 以外の値を使用する場合は、レシーバーがメトリクスをスクレイピングした後に集約する際に、ダブルカウントを避けるようにしてください。

Recreate the query on every scrape 🔗

Windowsのバージョンによっては、カウンターが破損し、最初のスクレイプの後に無効なデータを返し続けることがあります。このような場合は、カウンターの設定 recreate_querytrue に設定し(デフォルトは false )、スクレイプの度にPDHクエリを再作成するように受信機に指示します。これはパフォーマンスに影響する可能性がありますが、collection_interval が非常に高くない限り、重要ではありません。

クエリの再作成に失敗した場合、以前のクエリが再利用され、エラーが記録されます。

Define metric format 🔗

Configured metrics consist of a metric description, including unit and type, used by one or more performance counters scraped by the receiver.

特定の形式でメトリクスを報告するには、メトリクスを定義し、該当する属性とともに、対応するカウンターでそれを参照します。デフォルトでは、メトリクス名はカウンターの名前に対応します。

メトリクスは、sum または gauge のタイプが可能です。Sum メトリクスは、aggregationmonotonic フィールドをサポートします。

フィールド

説明

デフォルト

name

メトリクスのキーまたは名前。空でない文字列。

文字列

カウンターの名前

description

メトリクスまたは測定の説明

文字列

unit

測定単位

文字列

1

sum

合計メトリクスの表現

合計設定

gauge

ゲージメトリクスの表現

ゲージ設定

Sum metrics 🔗

以下の設定は、合計メトリクスに適用されます:

フィールド

説明

aggregation

メトリクスの集計の一時性のタイプ

cumulative または delta

monotonic

メトリクス値が減少するかどうか

false

Gauge metrics 🔗

gauge 設定は設定を受け付けません。上位互換性のためにオブジェクトとして指定されています。

The following example emits the Memory/Committed Bytes counter as the bytes.committed metric:

receivers:
  windowsperfcounters:
    metrics:
      bytes.committed:
        description: the number of bytes committed to memory
        unit: By
        gauge:
    collection_interval: 30s
    perfcounters:
    - object: Memory
      counters:
        - name: Committed Bytes
          metric: bytes.committed

service:
  pipelines:
    metrics:
      receivers: [windowsperfcounters]

既知の制限 🔗

  • ネットワーク・インターフェイスはコンテナ内部では利用できないため、そのシナリオではオブジェクト Network Interface のメトリクスは生成されません。サブプロセスがある場合は、 Network Interface メトリクスをキャプチャします。

  • カウンターのカテゴリ Process は、同じプロセスの複数のインスタンスがあると信頼できません。

    • Windows 11以降では、インスタンス名にプロセスIDが含まれるため、代わりに Process V2 を使用します。

    • Windows 11より前のバージョンでは、インスタンス名にPIDを含めるように Process カウンターカテゴリを設定できます。詳しくは、Microsoftのドキュメント Handling Duplicate Instance Names をご覧ください。

設定 🔗

以下の表は、Windows パフォーマンス・カウンター・レシーバーの構成オプションを示します:

トラブルシューティング 🔗

Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。

Splunk Observability Cloudをご利用のお客様

見込み客および無料トライアルユーザー様

  • Splunk Answers のコミュニティサポートで質問し、回答を得る

  • Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。

このページは 2024年12月12日 に最終更新されました。