SwiftServer
Monitoring

Linux, macOS, and Windows

What SwiftServer monitoring reads on each platform, what each server needs, and per-platform differences.

One dashboard covers Linux, macOS, and Windows servers. SwiftServer detects the operating system when monitoring starts and remembers it for future connections. This page lists what each platform needs and how coverage differs.

Linux

Linux has the fullest coverage and needs nothing beyond SSH access. SwiftServer reads standard kernel interfaces and common tools:

MetricSource
CPU usage/proc/stat (two samples)
CPU load/proc/loadavg
CPU modellscpu
Temperature/sys/class/hwmon/*/temp1_input
Memory & swap/proc/meminfo
Processesps
Network/proc/net/dev (two samples) + ip addr
Storage & disk I/Odf, /proc/diskstats, /proc/self/mountinfo
GPUnvidia-smi (when present)
Dockerdocker CLI (when present)

Everything is read-only; SwiftServer never needs root for monitoring. Some minimal container images lack ps or ip — install the usual procps and iproute2 packages if a card stays empty.

macOS

Enable System Settings → General → Sharing → Remote Login on the Mac, then add it like any other server. Monitoring uses built-in tools: top, vm_stat, sysctl, df, ps, and netstat.

macOS differences:

  • CPU shows the overall percentage only — macOS does not expose per-core splits to top, so the per-core view is unavailable.
  • CPU temperature is not available.
  • Storage shows capacity per volume, but not disk I/O rates.
  • GPU monitoring is not available on macOS.
  • Docker works when Docker Desktop or a CLI install is present — SwiftServer automatically includes the Homebrew and /usr/local/bin paths that SSH sessions normally miss.

Windows

SwiftServer monitors Windows through PowerShell over SSH. The server needs:

  1. OpenSSH Server — an optional feature on Windows 10/11 and Windows Server. Install it in Settings → System → Optional features, start the sshd service, and allow it through the firewall.
  2. Windows PowerShell 5.1 — already part of Windows. The default SSH shell can be cmd.exe, Windows PowerShell, or pwsh; all three work.

Metrics come from CIM performance counters (Get-CimInstance), so they are locale-independent and need no extra software. Covered on Windows: CPU usage with per-core detail, memory and page file, processes, network, storage with disk I/O, IP location, and GPU via nvidia-smi when present.

Windows differences:

  • CPU Load is hidden — Windows has no load average.
  • Docker monitoring is not supported on Windows servers: Docker Desktop on Windows exposes the engine over a named pipe, which cannot be reached through OpenSSH.
  • vnStat does not exist on Windows, so long-term network history is unavailable.
  • CPU temperature is not available.

On this page