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 Process your data with 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:
Deploy the Splunk Distribution of OpenTelemetry Collector to your host or container platform:
Configure the Windows Performance Counters receiver as described in the next section.
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.
Metric format π
To report metrics in a specific format, define the metric and reference it in the corresponding counter, along with any applicable attributes. Metrics can be of type sum
or gauge
. Sum metrics support the aggregation
and monotonic
fields.
Field |
Description |
Value |
Default |
---|---|---|---|
|
Metric key or name |
String |
Name of the counter |
|
Description of the metric or measurement |
String |
|
|
Unit of measurement |
String |
|
|
Representation of a sum metric |
Sum configuration |
|
|
Representation of a gauge metric |
Gauge configuration |
The following settings apply to sum metrics:
Field |
Description |
Value |
Default |
---|---|---|---|
|
Type of aggregation temporality for the metric |
|
|
|
Whether the metric value can decrease |
|
The following settings apply to gauge metrics:
The gauge
configuration doesnβt accept settings. 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]
Configure collection interval and counters π
You can configure the collection interval and which performance counters you want to scrape. For example:
windowsperfcounters:
collection_interval: <duration> # default = "1m"
initial_delay: <duration> # default = "1s"
metrics:
<metric name>:
description: <description>
unit: <unit type>
gauge:
<metric name>:
description: <description>
unit: <unit type>
sum:
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>
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 |
|
The total instance |
|
Single instance |
|
Set of instances |
|
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
Submit a case in the Splunk Support Portal .
Call Splunk Customer Support .
Available to prospective 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 .