Skip to content

Latest commit

 

History

History
103 lines (71 loc) · 3.63 KB

File metadata and controls

103 lines (71 loc) · 3.63 KB

Windows system statistics (winstat)

{% hint style="info" %} Supported event types: logs {% endhint %}

The Windows System Statistics (winstat) input plugin collects system-level statistics from Windows environments, including CPU usage, memory consumption, disk I/O, and network activity. This plugin uses Windows Performance Counters to gather real-time system metrics.

{% hint style="info" %}

This plugin is only available on Windows operating systems and requires appropriate permissions to access Windows Performance Counters.

{% endhint %}

Configuration parameters

The plugin supports the following configuration parameters:

Key Description Default
interval_sec Polling interval in seconds. 1
interval_nsec Polling interval in nanoseconds. 0
threaded Indicates whether to run this input in its own thread. false

Metrics collected

The winstat plugin collects the following system statistics:

Metric Category Description
CPU CPU usage percentage, including user and system time.
Memory Memory usage including total, available, and used memory.
Disk Disk I/O statistics including read/write operations and throughput.
Network Network interface statistics including bytes sent/received and packet counts.

Get started

To collect Windows system statistics, you can run the plugin from the command line or through the configuration file:

Command line

You can run the plugin from the command line:

fluent-bit -i winstat -o stdout

Which returns information similar to the following:

...
[0] winstat: [1699123456.123456789, {"cpu.usage"=>15.3, "cpu.user"=>10.2, "cpu.system"=>5.1, "memory.total"=>8192, "memory.available"=>4096, "memory.used"=>4096, "disk.read_bytes"=>1024000, "disk.write_bytes"=>512000, "network.bytes_sent"=>2048000, "network.bytes_recv"=>1024000}]
[1] winstat: [1699123457.123456789, {"cpu.usage"=>16.1, "cpu.user"=>11.0, "cpu.system"=>5.1, "memory.total"=>8192, "memory.available"=>4080, "memory.used"=>4112, "disk.read_bytes"=>1025000, "disk.write_bytes"=>515000, "network.bytes_sent"=>2050000, "network.bytes_recv"=>1025000}]
...

Configuration file

In your main configuration file append the following:

{% tabs %} {% tab title="fluent-bit.yaml" %}

pipeline:
  inputs:
    - name: winstat
      tag: winstat
      interval_sec: 1
      interval_nsec: 0

  outputs:
    - name: stdout
      match: '*'

{% endtab %} {% tab title="fluent-bit.conf" %}

[INPUT]
  Name          winstat
  Tag           winstat
  Interval_Sec  1
  Interval_Nsec 0

[OUTPUT]
  Name   stdout
  Match  *

{% endtab %} {% endtabs %}

Total interval (sec) = interval_sec + (interval_nsec / 1000000000)

For example: 1.5s = 1s + 500000000ns

{% hint style="info" %}

For Prometheus-based metrics collection on Windows, consider using the Windows Exporter Metrics input plugin instead.

{% endhint %}