Docs » Get started with the Splunk Distribution of the OpenTelemetry Collector » Components » Windows Performance Counters receiver

Windows Performance Counters receiver πŸ”—

The Windows Performance Counters receiver allows the Splunk Distribution of OpenTelemetry Collector to collect configured system, application, or custom performance counter data from the Windows Registry. The supported pipeline types are metrics. See Configure pipelines for more information.

Configured metrics consist of a metric description, including unit and type, used by one or more performance counters scraped by the receiver. If a specific performance counter can’t be accessed at startup, the receiver emits a warning and continues execution.

The Windows Performance Counters receiver replaces the SmartAgent monitor type of the same name. See Windows performance counters for information on the monitor type.

Note

The Windows Performance Counters receiver only works on Windows hosts.

Get started πŸ”—

Follow these steps to configure and activate the component:

  1. Deploy the Splunk Distribution of OpenTelemetry Collector to your host or container platform:

  2. Configure the Windows Performance Counters receiver as described in the next section.

  3. Restart the Collector.

Sample configurations πŸ”—

To activate the Windows Performance Counters receiver add a windowsperfcounters entry inside the receivers section of the Collector configuration file. For example:

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

To complete the configuration, include the receiver in the metrics pipeline of the service section of your configuration file. For example:

service:
  pipelines:
    metrics:
      receivers:
        - windowsperfcounters

To collect metrics from Windows performance counters, you need to define metrics using the metrics field as in the example. You can then reference the metrics you defined from the counters.metric fields.

Metrics can be of type sum or gauge. Sum metrics support the aggregation and monotonic fields.

Scrape at different collection intervals πŸ”—

The following example shows how to scrape performance counters using different collection intervals depending on the target:

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: [1, 2]
        counters:
          - name: "% Idle Time"
            metric: processor.time
            attributes:
              state: idle

  # ...

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

Instances configuration πŸ”—

An instance is any entity that produces performance data. Instances can have one or more counter values.

The receiver supports the following values through the instances field:

Value

Interpretation

"*"

All instances

"_Total"

The total instance

"instance1"

Single instance

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

Set of instances

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

Set of instances including the total instance

Known limitations πŸ”—

Metrics from the Network Interface object aren’t generated when running the Collector inside a container. This is caused by the network interface not being available inside the container. Network Interface metrics are captured for subprocesses.

Settings πŸ”—

The following table shows the configuration options for the Windows Performance Counters receiver:

Troubleshooting πŸ”—

If you are a Splunk Observability Cloud customer and are not able to see your data in Splunk Observability Cloud, you can get help in the following ways.

Available to Splunk Observability Cloud customers πŸ”—

Available to customers and free trial users πŸ”—

  • Ask a question and get answers through community support at Splunk Answers.

  • Join the Splunk #observability user group Slack channel to communicate with customers, partners, and Splunk employees worldwide. To join, see Chat groups in the Get Started with Splunk Community manual.

To learn about even more support options, see Splunk Customer Success.