Servers

Host metrics

The Spectate agent reports metrics for CPU, memory, disk, network and the system. The host page in the dashboard shows them as charts, and metric conditions use them to fire alerts. The agent collects a sample every 15 seconds and sends the samples once a minute.

The host page

Open a host from the Hosts page. The host page has three tabs: Overview, Metrics and Settings & alerts.

The header shows the platform, the kernel, the virtualization, the agent version and Last seen. If a newer agent release exists, the header shows it next to the agent version. If the server's clock differs from Spectate's clock by more than 30 seconds, the header also shows the difference under Clock.

Overview tab

The Overview tab shows, from top to bottom:

  1. The health checks of the host (agent 2.1 or later).
  2. System uptime, the number of CPU cores, and the total memory and swap.
  3. Charts for CPU, Memory, Load, Network and Disk. Select a period of 6h, 24h, 7d or 30d. Select a network interface for the network chart and a mountpoint for the disk chart.
  4. A table of the disks, with the space used per mountpoint.
  5. CPU inventory: the model and cores of each CPU.

Metrics tab

The Metrics tab shows all charts of the host, in five sections. Select a period of 6h, 24h (default), 7d or 30d.

SectionCharts
CPUCPU use, load, and CPU pressure
MemoryRAM and swap, Memory pressure, and Out of memory kills
DiskSpace per mountpoint, Throughput, Operations, Busy, Latency and I/O pressure
NetworkTraffic, and TCP connections (established, time wait and orphaned)
SystemFile handles: the share of the system-wide maximum in use

The disk I/O charts show all disks together. If the host has more than one disk, select one disk in the list next to the Disk heading.

Charts of agent 2.1 metrics show only when the host reports them. A host with an older agent, or a collector that is off, has fewer charts. On macOS, the agent does not report pressure, out of memory kills or TCP connections in the time wait state.

Collectors

A collector is the part of the agent that reads one group of metrics. The agent always runs the base collectors: CPU, memory, load, disk, network, uptime and the agent's own metrics.

With agent 2.1 or later, you can turn off these collectors per host:

CollectorLabel in the dashboardSystems
diskioDisk I/OLinux, macOS
pressurePressure & out of memoryLinux
servicesServicesLinux with systemd
updatesUpdates & rebootLinux with apt, dnf or yum
socketsConnections & file handlesLinux, macOS
clockClockLinux

To turn a collector off or on:

  1. Open the host and go to Settings & alerts.
  2. Under Collection, clear or select the collector.
  3. Select Save changes.

The change applies at the agent's next report. A collector that is off also hides its health checks and resolves their alerts.

A collector that has nothing to report on a server sends nothing, not zeros. For example, Linux before kernel 4.20 has no pressure data.

Metrics and units

These are the metrics that you can see in charts and use in metric conditions. The key is the name in the public API and in alert data.

Summary metrics

Spectate calculates these from the agent's raw values:

KeyLabelUnit
cpu_usageCPU usage% (100 minus idle)
memory_usageMemory usage% (100 minus available)
disk_usageDisk usage% per mountpoint
load_averageLoad averageThe 1-minute load average
network_inNetwork receivedKB per 60 seconds, per interface
network_outNetwork sentKB per 60 seconds, per interface

CPU

KeyLabelUnit
system.cpu.userCPU user%
system.cpu.systemCPU system%
system.cpu.iowaitCPU I/O wait%
system.cpu.stolenCPU steal%
system.cpu.idleCPU idle%
system.cpu.guestCPU guest%
system.cpu.interruptCPU interrupt%
system.pressure.cpu.someCPU pressure% of time that tasks waited (agent 2.1)

Memory and swap

KeyLabelUnit
system.memory.totalMemory totalMB
system.memory.usedMemory usedMB
system.memory.freeMemory freeMB
system.memory.availableMemory availableMB
system.memory.available_percentMemory available%
system.swap.totalSwap totalMB
system.swap.usedSwap usedMB
system.swap.freeSwap freeMB
system.swap.free_percentSwap free%
system.swap.inSwap inMB
system.swap.outSwap outMB
system.pressure.memory.someMemory pressure% of time that tasks waited (agent 2.1)

Disk

KeyLabelUnit
system.disk_usage.totalDisk totalKB per mountpoint
system.disk_usage.usedDisk usedKB per mountpoint
system.disk_usage.freeDisk freeKB per mountpoint
system.disk_usage.inodes_totalDisk inodes totalInodes
system.disk_usage.inodes_usedDisk inodes usedInodes
system.disk_usage.inodes_freeDisk inodes freeInodes
system.disk_usage.inodes_used_percentDisk inodes used%
system.io.busy_percentDisk busy% of time, per disk (agent 2.1)
system.io.await_msDisk latencyMilliseconds per operation, per disk (agent 2.1)
system.pressure.io.someI/O pressure% of time that tasks waited (agent 2.1)

The disk I/O charts also show bytes read and written per second and operations per second.

Network

KeyLabelUnit
system.net.packets_recvPackets receivedPackets per 60 seconds
system.net.packets_sentPackets sentPackets per 60 seconds
system.net.err_inNetwork receive errorsPer 60 seconds
system.net.err_outNetwork send errorsPer 60 seconds
system.net.drop_inNetwork receive dropsPer 60 seconds
system.net.drop_outNetwork send dropsPer 60 seconds
system.net.fifo_inNetwork receive FIFOPer 60 seconds
system.net.fifo_outNetwork send FIFOPer 60 seconds
system.net.tcp.establishedTCP connectionsConnections (agent 2.1)
system.net.tcp.time_waitTCP connections in TIME_WAITConnections (agent 2.1)

Network values are amounts per 60 seconds, also when the agent collects every 15 seconds. The v1 agent used the same unit, so thresholds keep their meaning after you move a host to v2.

System

KeyLabelUnit
system.load.1Load 1 minuteLoad average
system.load.5Load 5 minutesLoad average
system.load.15Load 15 minutesLoad average
system.uptimeSystem uptimeSeconds
system.files.used_percentFile handles used% of the system-wide maximum (agent 2.1)

The agent also reports metrics that only the health checks use: failed services, out of memory kills, pending updates, reboot required and clock sync.

Disk and network filters

The agent skips some disks and network interfaces by default:

  • File systems: network and virtual file systems, such as nfs, nfs4, cifs, smbfs, squashfs, vfat, fuse.sshfs, ceph and 9p.
  • Network interfaces: loopback (lo), bridges and virtual interfaces, such as br*, docker*, veth*, virbr*, cni*, flannel* and cali*.
  • Disk I/O: virtual and stacked devices, such as loop*, ram*, zram*, dm-* and md*. Their I/O is already counted on the disks below them.

How long Spectate keeps metrics

DataKept for
Samples, one every 15 seconds30 days
Hourly minimum, maximum, average and last value per metric400 days (about 13 months)

When you delete a team, Spectate deletes its metrics. See data and privacy.