# hostmetrics

Source: https://www.pingtower.com/docs/addons/hostmetrics/

CPU, load, memory, swap and paging on the box the agent runs on. Unprivileged, Linux only, reads a handful of files under /proc.

## Parameters

| Parameter | Default | Meaning |
| --- | --- | --- |
| `max_sample_interval` | `15m` | Longest gap between two samples that still yields rates. 1s to 24h. |

There is no universal up or down threshold. The gauges are for rules that reflect your workload, for example `{"key":"load_1m_per_effective_cpu","op":"gte","value":2}`.

## Measurements

- **CPU** as percentages of time: `cpu_utilization_pct` (excludes idle and iowait), `cpu_user_pct` (includes nice), `cpu_system_pct` (includes IRQ), with steal and iowait separate.
- **Load**: raw 1, 5 and 15 minute averages, and each divided by the CPUs the agent process can actually run on, labelled `cpu_scope=process-affinity`.
- **Memory and swap**: totals, used, percentages. `memory_used_bytes` is `MemTotal - MemAvailable`, so reclaimable cache is not called unavailable. A zero-sized swap omits `swap_used_pct`.
- **Paging** rates in the kernel's units: `_kib_per_s` for page in and out, pages per second for swap.

Rates need two valid samples. The first run reports `measurement_health=warming-up` and omits them, as does any run after a corrupt state file, a counter rollback, an interval outside the allowed range, or a CPU-count change. A normal restart resumes from the saved baseline in `agent.state_dir`.

No process identity, command line, environment or free-form procfs text is reported.
