prometheus-community / windows_exporter

Prometheus exporter for Windows machines

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Version 0.25.1 Ignores the Collect Parameter

mwallace78 opened this issue · comments

When using the collect parameter in the Prometheus config to filter collectors, all enabled collectors are still being returned.

On a system that has 0.25.1 installed with all collectors enabled at installation time, we can see them all attempting to return even though we are only passing "cpu" as a collect param:

curl 'http://<server>:9182/metrics?collect%5B%5D=cpu' | grep windows_exporter_collector_success
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
# HELP windows_exporter_collector_success windows_exporter: Whether the collector was successful.
# TYPE windows_exporter_collector_success gauge
windows_exporter_collector_success{collector="ad"} 0
windows_exporter_collector_success{collector="adcs"} 0
windows_exporter_collector_success{collector="adfs"} 0
windows_exporter_collector_success{collector="cache"} 1
windows_exporter_collector_success{collector="container"} 0
windows_exporter_collector_success{collector="cpu"} 1
windows_exporter_collector_success{collector="cpu_info"} 1
windows_exporter_collector_success{collector="cs"} 1
windows_exporter_collector_success{collector="dfsr"} 1
windows_exporter_collector_success{collector="dhcp"} 0
windows_exporter_collector_success{collector="dns"} 0
windows_exporter_collector_success{collector="exchange"} 0
windows_exporter_collector_success{collector="fsrmquota"} 0
windows_exporter_collector_success{collector="hyperv"} 0
windows_exporter_collector_success{collector="iis"} 0
windows_exporter_collector_success{collector="logical_disk"} 1
windows_exporter_collector_success{collector="logon"} 1
windows_exporter_collector_success{collector="memory"} 1
windows_exporter_collector_success{collector="mscluster_cluster"} 0
windows_exporter_collector_success{collector="mscluster_network"} 0
windows_exporter_collector_success{collector="mscluster_node"} 0
windows_exporter_collector_success{collector="mscluster_resource"} 0
windows_exporter_collector_success{collector="mscluster_resourcegroup"} 0
windows_exporter_collector_success{collector="msmq"} 0
windows_exporter_collector_success{collector="mssql"} 0
windows_exporter_collector_success{collector="net"} 1
windows_exporter_collector_success{collector="netframework_clrexceptions"} 1
windows_exporter_collector_success{collector="netframework_clrinterop"} 1
windows_exporter_collector_success{collector="netframework_clrjit"} 1
windows_exporter_collector_success{collector="netframework_clrloading"} 1
windows_exporter_collector_success{collector="netframework_clrlocksandthreads"} 1
windows_exporter_collector_success{collector="netframework_clrmemory"} 1
windows_exporter_collector_success{collector="netframework_clrremoting"} 1
windows_exporter_collector_success{collector="netframework_clrsecurity"} 1
windows_exporter_collector_success{collector="os"} 1
windows_exporter_collector_success{collector="process"} 1
windows_exporter_collector_success{collector="remote_fx"} 0
windows_exporter_collector_success{collector="scheduled_task"} 1
windows_exporter_collector_success{collector="service"} 1
windows_exporter_collector_success{collector="smtp"} 0
windows_exporter_collector_success{collector="system"} 1
windows_exporter_collector_success{collector="tcp"} 1
windows_exporter_collector_success{collector="teradici_pcoip"} 0
windows_exporter_collector_success{collector="terminal_services"} 1
windows_exporter_collector_success{collector="textfile"} 1
windows_exporter_collector_success{collector="thermalzone"} 0
windows_exporter_collector_success{collector="time"} 1
windows_exporter_collector_success{collector="vmware"} 1
windows_exporter_collector_success{collector="vmware_blast"} 0

On another server with 0.24.0 installed with all collectors enabled we see the expected return of only the cpu collector enabled:

curl 'http://<server>:9182/metrics?collect%5B%5D=cpu' | grep windows_exporter_collector_success
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10940    0 10940    0     0  1464k      0 --:--:-- --:--:-- --:--:-- 1526k
# HELP windows_exporter_collector_success windows_exporter: Whether the collector was successful.
# TYPE windows_exporter_collector_success gauge
windows_exporter_collector_success{collector="cpu"} 1

I've been able to reproduce this on a handful of servers running 0.25.1.