influxdata/telegraf

[inputs.win_perf_counters] skip "error while getting value for counter" for hyper-v

Open

#16,086 opened on Oct 28, 2024

View on GitHub
 (5 comments) (0 reactions) (1 assignee)Go (9,892 stars) (4,161 forks)batch import
feature requesthelp wanted

Description

Relevant telegraf.conf

[[inputs.win_perf_counters]]
[[inputs.win_perf_counters.object]]
    ObjectName = "Hyper-V Hypervisor Virtual Processor"
    Instances = ["*"]
    Measurement = "hyperv_processor"
    Counters = [
      "% Guest Run Time",
      "% Hypervisor Run Time",
      "% Idle Time",
      "% Total Run Time"
    ]

Logs from Telegraf

2024-10-28T13:02:30Z E! [inputs.win_perf_counters] Error in plugin: error during collecting data on host "localhost": error while getting value for counter "\\Hyper-V Hypervisor Virtual Processor(*)\\% Guest Run Time": The data item has been added to the query, but has not been validated or accessed. No other status information about this data item is available.
2024-10-28T13:02:45Z E! [inputs.win_perf_counters] Error in plugin: error during collecting data on host "localhost": error while getting value for counter "\\Hyper-V Hypervisor Virtual Processor(*)\\% Guest Run Time": The data item has been added to the query, but has not been validated or accessed. No other status information about this data item is available.

System info

Windows Server 2019 - Hyper-v

Docker

No response

Steps to reproduce

  1. Run a Hyper-v host with vms
  2. Run Telegraf
  3. Remove or stop all VMs
  4. See logs ...

Expected behavior

[inputs.win_perf_counters] to ignore or handle the temporarily missing counter to not break the scraping of metrics.

Actual behavior

When no vm is running on a hyper-v host, the following (and maybe even more) counters are not filled with values/dont exists: ObjectName = "Hyper-V Hypervisor Virtual Processor" - "% Guest Run Time" ObjectName = "Hyper-V Hypervisor Logical Processor" - "% Guest Run Time"

Telegraf then returns the error from the [inputs.win_perf_counters] plugin. With this no other metric is collected anymore.

When turning on a VM the error is fixed and metrics are collected again.

Additional info

No response

Contributor guide