// the find
prometheus-community/windows_exporter
Prometheus exporter for Windows machines
The de-facto standard Prometheus exporter for Windows, covering everything from CPU and disk to Active Directory, IIS, Hyper-V, and SQL Server. If you're running Windows servers and want Prometheus metrics, this is the one — there's no real competition. Updated two days ago, actively maintained under the prometheus-community org.
Collector coverage is genuinely broad: 40+ collectors spanning AD, Exchange, MSSQL, Hyper-V, terminal services, and GPU — not just the CPU/memory basics every exporter has. The team went the extra mile with direct Win32 API calls via `golang.org/x/sys/windows` instead of leaning entirely on WMI, which matters for collectors where WMI latency would make scrapes miss timeouts. The MSI installer is well-thought-out: installs as a Windows service, creates optional firewall exceptions, and accepts MSI properties so you can script it with msiexec without touching config files. The `performancecounter` collector lets you expose arbitrary Windows performance counters without writing code — useful escape hatch when a niche app exposes perf counters but doesn't have a dedicated collector.
WMI-backed collectors (most of the non-default ones) can be slow or block on unhealthy machines, and there's no per-collector timeout other than the global scrape timeout margin — a misbehaving WMI provider can hold up the entire scrape. The `process` collector with per-process metrics at high process counts gets expensive fast; there's a regex filter but no built-in cardinality warning. Documentation quality is uneven: some collectors have thorough metric tables with descriptions, others are a few lines with no example queries or Grafana panels. PowerShell 7.3+ users hit quoting issues with EXTRA_FLAGS during MSI install — the workaround (`PSNativeCommandArgumentPassing = 'Legacy'`) is buried in the README and easy to miss.