Server Monitoring
Live CPU, memory, disk, network, process, service, container and availability views for one server, with thresholds, incidents and deployments drawn on the same timeline.
Open Servers, pick a server and choose Monitoring. The area has seven tabs.
Overview
The overview is laid out top to bottom as state → trend → cause.
- Status strip — online, quiet, offline, paused or agent not installed, with the agent version and sample interval. When the agent is missing you can install it from here; when it has gone silent you can reinstall it.
- Vitals — CPU, memory, disk (the fullest mount), network, load and uptime, each with its trend over the selected range. A tile turns amber or red as it approaches its threshold.
- Timeline — CPU (with I/O wait), memory (with swap), disk usage per mount, disk I/O and network throughput share one cursor: hover anywhere and every chart shows the same instant. Threshold lines mark 85 % / 95 % for disks and 90 % for CPU and memory, shaded bands mark periods the server was offline, and markers show deployments and reboots.
- Incidents, agent & host, what changed — the outages in range, the agent and OS facts (kernel, boot time, pending updates, reboot required), and the deployments, script runs and agent events in range.
Time ranges
Pick 15 minutes to 90 days from the range menu, choose Since last deploy, or drag across the network chart to zoom into any window. The range is part of the page URL, so a link you share opens on the same window.
Processes
The top processes by CPU and by memory, with the user, resident memory, state and command line, plus per-core CPU bars and TCP connection counts. This is the first place to look when the overview shows CPU or memory pressure.
Services
systemd units Devpilot watches on the server — web servers, PHP-FPM, databases, caches, Docker, cron, SSH and any unit in a failed state — with restart counts, and every Docker container with its CPU, memory and restart count.
Disks
Every real filesystem with used, free and total space, inode usage, a 7-day trend and an estimate of when the mount will be full (an early estimate after a couple of hours of data, a firm one after a day).
What's using the space answers the question the table cannot: which folders and files are taking the room, and which of them are growing. The agent scans each mount every six hours, whenever a mount passes 85 %, and when you press Scan now — results arrive on its next heartbeat, usually within a minute. Each mount lists its largest folders three levels deep with a growth-per-day figure against the previous scan, a fastest growing callout, and the biggest individual files. Below: used space per mount over time, inode usage, and read/write throughput.
Network
Throughput per interface (or all interfaces together), received and sent totals, errors and drops, and TCP connection states.
Availability
Uptime for the last 24 hours, 7, 30 and 90 days, a day-by-day strip for the last 90 days, and every recorded outage with its start, end, duration and cause.
Availability is measured from agent heartbeats. A server counts as offline only after the grace period; a clean agent stop (for example during a reinstall) is recorded with that cause rather than as an unexplained outage.
Logs
Read a service's journal, a log file or a container's logs without opening a terminal. Pick the source — a systemd unit (failed ones are listed first), a file under /var/log, or a container — choose how many lines and an optional filter, and press Fetch. The request rides the agent's next heartbeat and the result comes straight back, usually within 30 seconds, so it also works for servers Devpilot cannot SSH into. Lines that look like errors are highlighted; you can filter, wrap and copy the output.
The agent only reads files under its allowed log directories (/var/log by default) and runs journalctl / docker logs with the exact name you give it. Fetching logs requires the manage servers permission, and results are discarded after 15 minutes — nothing from your logs is stored on Devpilot. A failed service in an incident links straight to its journal.
Alerts
The incidents on this server and the rules that watch it — both the workspace-wide rules and rules created just for this server. See Alerts.
When something looks wrong
The status strip says agent not installed — install it. If it says offline, the agent is not reaching Devpilot: check that the server is up and can make outbound HTTPS requests, then use Reinstall agent.
Quiet means heartbeats stopped recently. The server may be rebooting or overloaded; if it does not recover within a few minutes it becomes an outage and an incident is opened.
An idle server legitimately shows low numbers. Check Last sample in the header: if it is recent, the numbers are real.