github prometheus-community/windows_exporter v0.30.0-beta.1

pre-release4 hours ago

Technical Preview

windows_exporter is undergoing a modernization. We plan to deliver a stable release by mid-2025, with upcoming changes—including a newly designed Hyper-V collector—adding value to the official 1.0 stable release.

Windows Management Infrastructure (MI) as a Replacement for Windows Management Instrumentation (WMI)

As of version 0.30.0, windows_exporter no longer uses WMI directly. Instead, it utilizes its successor, Windows Management Infrastructure (MI), available since Windows Server 2012. MI offers several advantages, such as the ability to run queries in parallel.

Performance Data Helpers

When the environment variable WINDOWS_EXPORTER_PERF_COUNTERS_ENGINE=pdh or CLI flag --perfcounter.engine=pdh is set, windows_exporter uses Performance Data Helpers instead of the Registry. This change also introduces support for Process V2, which is enabled by default on Windows Server 2022.

What's Changed

💥 Breaking Changes

  • *: replace --collectors.[name].* with --collector.[name].* flags (click PR number for more information) by @jkroepke in #1659
  • *: Remove teradici_pcoip and vmware_blast collector by @jkroepke in #1686
  • logon: BREAKING: replace wmi query by Win32 API calls and expose detailed logon sessions. (click PR for more information) by @jkroepke in #1687
  • chore: Switch to hostprocess base image and add support for Windows Server 2025 on Kubernetes (click PR number for more information) by @jkroepke in #1731
  • pagefile: BREAKING: move paging metrics from os to dedicated collector (click PR for more information) by @jkroepke in #1735

✨ Exciting New Features

🐞 Bug Fixes

  • scheduled_task: fix memory leaks by @jkroepke in #1649
  • collector: add stack trace, if collector panics by @jkroepke in #1650
  • initiate: fix Cannot create another system semaphore error by @jkroepke in #1653
  • initiate: close event log handle by @jkroepke in #1654
  • cpu: add workaround for counter resets related to % Processor Utility metric by @jkroepke in #1637
  • *: don't exclude resources, if empty exclude is empty. by @jkroepke in #1680
  • update: rename updates collector to update by @jkroepke in #1692
  • fix: fail, if unknown collector is defined in enabled list by @jkroepke in #1693
  • tcp: fix panic on collector by @jkroepke in #1699

🛠️ Dependencies

  • chore(deps): bump golang.org/x/sys from 0.25.0 to 0.26.0 by @dependabot in #1675
  • chore(deps): bump github.com/prometheus/common from 0.59.2-0.20240918152650-14bac55a992f to 0.60.0 by @dependabot in #1674
  • chore(deps): bump github.com/bmatcuk/doublestar/v4 from 4.6.1 to 4.7.1 by @dependabot in #1689
  • chore(deps): bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 by @dependabot in #1701
  • chore(deps): bump github.com/prometheus/common from 0.60.0 to 0.60.1 by @dependabot in #1708
  • chore(deps): bump github.com/Microsoft/hcsshim from 0.12.7 to 0.12.8 by @dependabot in #1707
  • chore(deps): bump github.com/prometheus/exporter-toolkit from 0.13.0 to 0.13.1 by @dependabot in #1717
  • chore(deps): bump github.com/Microsoft/hcsshim from 0.12.8 to 0.12.9 by @dependabot in #1716
  • chore(deps): bump golang.org/x/sys from 0.26.0 to 0.27.0 by @dependabot in #1724

📖 Documentation

Other Changes

  • chore: disable quay.io push, since no credentials are available. by @jkroepke in #1733

New Contributors

Full Changelog: v0.29.2...v0.30.0-beta.1

Don't miss a new windows_exporter release

NewReleases is sending notifications on new releases.