Table of Contents
OS Agent - Configuration
The Configuration tab is where you choose which OS metrics Telegraf should collect, and where you download the ready-to-paste setup files.
Agent Type
For now, only Telegraf is supported. The dropdown is here for future agent types.
Enabled Inputs
Each checkbox maps to a Telegraf input plugin. Tick the inputs you want and click Save - the Collector regenerates the setup files on the fly.
| Checkbox | Telegraf plugin | What it collects | OS |
| cpu | inputs.cpu | Total CPU usage, user, system, iowait | Linux + Windows |
| mem | inputs.mem | Memory used, available, free, used percent | Linux + Windows |
| disk | inputs.disk | Used percent per mount/drive | Linux + Windows |
| diskio | inputs.diskio | Disk read/write bytes and IOPS per device | Linux + Windows |
| swap | inputs.swap | Swap used percent | Linux only |
| net | inputs.net | Bytes sent / received per network interface | Linux + Windows |
| system | inputs.system | Load 1m / 5m / 15m, uptime | Linux only |
| processes | inputs.processes | Total / running / blocked / zombies counts | Linux only |
| kernel | inputs.kernel | Context switches, interrupts | Linux only |
| temp | inputs.temp | Hardware temperature sensors | Linux only (needs lm-sensors) |
| process | inputs.procstat | Per-process CPU, memory, disk I/O, threads | Linux + Windows |
Note: The process checkbox is labelled process in the UI but it maps to Telegraf's procstat plugin. The internal measurement name stays procstat.
Default selection
CPU, mem, disk, swap, net, system, processes are checked by default. This covers the most common monitoring needs without producing too much data.
Linux-only inputs on Windows
Linux-only plugins (swap, system, processes, kernel, temp) do not error on Windows - they simply produce no metrics. You can leave them enabled in the same config for both Linux and Windows hosts.
Process monitoring (procstat)
When process is enabled, the Collector tracks per-process metrics: CPU usage, memory (RSS), disk read/write, thread count.
Default mode: top consumers
By default, only the top 20 processes by CPU, memory, read bytes and write bytes are pushed every 30 seconds. This is done with Telegraf's topk processor:
[[processors.topk]] period = 30 k = 20 group_by = ["host"] fields = ["cpu_usage", "memory_rss", "read_bytes", "write_bytes"] namepass = ["procstat"]
This keeps the volume reasonable: even on a busy host with 1000 processes, the Collector receives at most ~80 process metrics per push (20 per field, with overlap when the same process tops in several fields).
List all processes
If you really want every process on the host, tick the List all processes checkbox. This removes the topk filter from the generated config. Use with care:
- Volume can be 50-100x higher
- Each unique process_name + pid pair is a distinct series in storage
- On hosts that spawn many short-lived processes (CI agents, build hosts…) the cardinality grows fast
After ticking and saving, redeploy the agent (run the setup script again) so Telegraf picks up the new config.
Disk I/O permissions
Per-process disk I/O (read_bytes, write_bytes) needs special permissions:
- Linux baremetal as root: works out of the box
- Linux Docker without privileges: Docker hides
/proc/<pid>/iofrom non-root readers - the field is empty even when telegraf runs as root inside the container. Add–cap-add SYS_PTRACEor–privilegedwhen starting the container if you need it. - Windows admin: works out of the box
If your host shows process names but no I/O numbers, check the Telegraf user's permissions.
wget Setup Command
At the bottom of the tab, the Collector shows a ready-to-paste wget command that downloads and runs the install script on a Linux host:
wget https://collector.example.com/api/v1/os-agent/generate?format=sh -O setup.sh && chmod +x setup.sh && sudo ./setup.sh
- The URL is built from the request URL - so it works even if your Collector is behind a reverse proxy, as long as users open the modal through the public URL
- If your Collector is not on HTTPS or uses a different port, edit the URL before pasting - the hint under the field tells you so
Generated files
Three formats are available for download:
setup.sh (Linux)
A bash script that:
- Detects
apt-getoryum - Adds the InfluxData repository
- Installs the
telegrafpackage - Writes
/etc/telegraf/telegraf.conffrom the current configuration (with the API key already filled in) - Enables and starts the
telegrafservice
Run with sudo ./setup.sh.
telegraf.conf (any OS)
The Telegraf configuration file alone, without any install logic. Use it if you already have Telegraf installed and just need the right config:
- Linux: copy to
/etc/telegraf/telegraf.confandsudo systemctl restart telegraf - Windows: copy to
C:\Program Files\Telegraf\telegraf.confandRestart-Service telegraf
setup.ps1 (Windows)
A PowerShell script that:
- Tries to fetch the latest Telegraf version from the GitHub API (5-second timeout, falls back to a built-in version)
- Downloads the Telegraf zip from
dl.influxdata.com - Extracts to
C:\Program Files\Telegraf\ - Writes
telegraf.conf - Installs and starts the Windows service
Run as Administrator in PowerShell
Per-System config
You can generate a setup for a specific System by selecting it in the Target System dropdown. The X-API-Key embedded in the script will be the System's override key (if any), or the global key
If you do not link the host to any System, the global key is used and the host is auto-registered as standalone (it can still be linked later from the Monitor tab)
Save behavior
The Save button:
- Updates the in-memory config in the Collector
- Does not push the new config to the deployed agents - they keep running with their previous config until you redeploy
To apply a config change to a deployed agent, run the setup script again on the host (or just download and copy the new telegraf.conf and restart Telegraf)
