Monitoring a VPS: uptime, disk, and catching problems early
What to actually monitor on a small VPS — uptime, CPU, memory, disk, TLS expiry and the balance — with a lightweight stack you can set up in an evening.
Most server problems announce themselves before they become outages — memory creeping up, a disk filling, a certificate about to expire. Monitoring is how you catch them in the quiet phase. This guide covers what is worth watching on a small VPS and a stack light enough to run without becoming the thing you have to maintain.
What actually matters on a small VPS
| Signal | Why it matters | Alert threshold |
|---|---|---|
| Uptime / HTTP status | The service is down or erroring | 2 failed checks in a row |
| Memory | OOM kills take services down silently | Above 85% sustained |
| Disk space | Full disk breaks logs, databases, mail | Above 80% used |
| CPU load | Sustained saturation means underpowered | Load > core count for 10 min |
| Balance | Server suspends at zero balance | Below one cycle of runway |
| TLS expiry | Outage you could have prevented | Under 14 days |
A minimal stack
On a 1 GB VPS, keep it lean. The point of monitoring is to reduce your own attention, not to hand you a new server to maintain.
- ▹An external uptime check — a free HTTP monitor hitting your service from outside, since an internal check cannot see a network failure.
- ▹node_exporter + Prometheus for the raw metrics, if you want history rather than just alerts.
- ▹A tiny alerting bridge — email or a webhook to wherever you already look.
- ▹Log rotation with logrotate, so logs do not become your disk outage.
Disk is the quiet killer
Disks fill from things nobody thinks of: old logs, package caches, Docker layers, unrotated journals. A full disk takes down mail, databases and logs together. Set logrotate, prune unused packages, and alert at 80% rather than at 95%.
Memory creep
Memory is usually fine until it is not — a leaking process grows slowly, then OOM. Watch the trend, not just the current value. If something grows without bound over days, that process needs a restart policy or a fix.
TLS and certificates
If you terminate TLS with Caddy, certificates renew automatically and this concern largely disappears. If you manage certificates yourself, expiry is a hard outage — alert well before it, not after.
Do not forget the balance
In a prepaid model, an empty balance suspends the server with no warning. If you run anything you depend on, watch the balance the way you watch disk. It is the one metric unique to this billing model and the easiest to forget.
Start with three checks
If you only do three things: external uptime check, disk-usage alert, and balance alert. Those three catch the majority of real incidents on a small VPS. Everything else is refinement.
FAQ
QWhat is the most common VPS problem?
ADisk filling up, followed by memory exhaustion. Both are easy to monitor and easy to fix if you catch them early.
QDo I need Prometheus for a small VPS?
ANo. An external uptime check plus disk, memory and balance alerts covers the majority of incidents without any stack at all.
QHow should I monitor the balance?
AQuery it from the finance API on a schedule and alert when it drops below one cycle of runway.