Windows Exporter Metrics

A plugin based on Prometheus Windows Exporter to collect system / host level metrics

Prometheus Windows Exporter is a popular way to collect system level metrics from microsoft windows, such as CPU / Disk / Network / Process statistics. Calyptia Fluent Bit 22.4.1 includes windows exporter metrics plugin that builds off the Prometheus design to collect system level metrics without having to manage two separate processes or agents.

The initial release of Windows Exporter Metrics contains a single collector available from Prometheus Windows Exporter and we plan to expand it over time.

Important note: Metrics collected with Windows Exporter Metrics flow through a separate pipeline from logs and current filters do not operate on top of metrics.

Configuration

KeyDescriptionDefault

scrape_interval

The rate at which metrics are collected from the host operating system

5 seconds

we.logical_disk.allow_disk_regex

Specify the regex for logical disk metrics to allow collection of. Collect all by default.

"/.+/"

we.logical_disk.deny_disk_regex

Specify the regex for logical disk metrics to prevent collection of/ignore. Allow all by default.

NULL

we.net.allow_nic_regex

Specify the regex for network metrics captured by the name of the NIC, by default captures all NICs but to exclude adjust the regex.

"/.+/"

collector.cpu.scrape_interval

The rate in seconds at which cpu metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.net.scrape_interval

The rate in seconds at which net metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.logical_disk.scrape_interval

The rate in seconds at which logical_disk metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.cs.scrape_interval

The rate in seconds at which cs metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.os.scrape_interval

The rate in seconds at which os metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.thermalzone.scrape_interval

The rate in seconds at which thermalzone metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.cpu_info.scrape_interval

The rate in seconds at which cpu_info metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.logon.scrape_interval

The rate in seconds at which logon metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

collector.system.scrape_interval

The rate in seconds at which system metrics are collected from the host operating system. If a value greater than 0 is used then it overrides the global default otherwise the global default is used.

0 seconds

metrics

To specify which metrics are collected from the host operating system.

"cpu,cpu_info,os,net,logical_disk,cs,thermalzone,logon,system"

Collectors available

The following table describes the available collectors as part of this plugin. All of them are enabled by default and respects the original metrics name, descriptions, and types from Prometheus Windows Exporter, so you can use your current dashboards without any compatibility problem.

note: the Version column specifies the Calyptia Fluent Bit version where the collector is available.

NameDescriptionOSVersion

cpu

Exposes CPU statistics.

Windows

v22.4

net

Exposes Network statistics.

Windows

v22.10

logical_disk

Exposes logical_disk statistics.

Windows

v22.10

cs

Exposes cs statistics.

Windows

v22.10

os

Exposes OS statistics.

Windows

v22.10

thermalzone

Exposes thermalzone statistics.

Windows

v22.10

cpu_info

Exposes cpu_info statistics.

Windows

v22.10

logon

Exposes logon statistics.

Windows

v22.10

system

Exposes system statistics.

Windows

v22.10

Getting Started

Simple Configuration File

In the following configuration file, the input plugin _windows_exporter_metrics collects _metrics every 2 seconds and exposes them through our Prometheus Exporter output plugin on HTTP/TCP port 2021.

# Node Exporter Metrics + Prometheus Exporter
# -------------------------------------------
# The following example collect host metrics on Linux and expose
# them through a Prometheus HTTP end-point.
#
# After starting the service try it with:
#
# $ curl http://127.0.0.1:2021/metrics
#
[SERVICE]
    flush           1
    log_level       info

[INPUT]
    name            windows_exporter_metrics
    tag             node_metrics
    scrape_interval 2

[OUTPUT]
    name            prometheus_exporter
    match           node_metrics
    host            0.0.0.0
    port            2021

        

You can test the expose of the metrics by using curl:

curl http://127.0.0.1:2021/metrics

Enhancement Requests

Our current plugin implements a sub-set of the available collectors in the original Prometheus Windows Exporter, if you would like that we prioritize a specific collector please open a Github issue by using the following template: - in_windows_exporter_metrics

Last updated