Monitoring

How do you monitor a Linux server without an SRE?

A practical guide for developers and small teams: what to watch on a Linux server, which signals matter, and how to get alerts and fixes without hiring for ops.

In short

To monitor a Linux server without an SRE, install an agent that discovers what is running by itself, watch the six things that actually take servers down (disk space, memory pressure, a crashed service, an expired certificate, a failed deploy and a security exposure), route critical alerts to a phone or Slack, and use a tool that explains the cause and suggests the fix so the on-call developer does not need ops experience.

What actually needs watching on a Linux server?

Most outages on small fleets come from a short list of causes. A tool that covers these six with clear alerts is worth more than one that graphs 2,000 metrics.

  • •Disk space and inode exhaustion, usually from logs that do not rotate or Docker images that are never pruned
  • •Memory pressure: a leaking process, swap thrashing, or the OOM killer taking out the database
  • •A service that stopped: nginx, PHP-FPM, a queue worker, a Docker container in a restart loop
  • •Certificates and domains expiring, which look like an outage to every user
  • •A change: a deploy, a package upgrade or a config edit right before the errors started
  • •Security exposure: a database port open to the internet, root SSH login, a burst of failed logins

Why do dashboards not solve this for small teams?

Grafana, Datadog and Netdata are built for someone whose job is to read them. A developer who is also on call needs the conclusion: which server, what is wrong, what changed, what to run. Without an SRE, the interpretation step is the bottleneck, not the data.

The practical test for any tool: open a server page at 2 a.m. and ask whether it tells you what to do in one sentence. If it shows you 40 panels, it assumes an expert is reading.

How do you set this up in five minutes?

With Opservo, one command installs a read-only agent that discovers systemd units, Docker containers, PM2 processes, nginx and Apache virtual hosts with SSL expiry, listening ports, MySQL, Redis and PostgreSQL, and Laravel, WordPress, Node, Django and PHP apps. No configuration file, no inbound ports.

curl -sSL https://api.getopservo.com/install.sh | sudo bash

Within a few minutes each server has a 0–100 health score with a named rule behind every lost point, a ranked list of what needs attention, and the exact command that fixes each finding. Add a Slack, email or webhook channel and critical findings page you; add on-call escalation if more than one person shares the load.

What should alert, and what should not?

  • •Alert on the things a human must act on now: a service down, disk under 10 percent, a failing disk, a certificate expiring within 7 days, an external check failing twice in a row
  • •Do not alert on CPU at 80 percent, a single 5xx, or anything that self-heals; put those in a daily or weekly digest
  • •Use anomaly baselines rather than fixed thresholds for traffic-driven metrics, so a busy Monday does not page anyone
  • •Every alert should carry the cause and the suggested fix; an alert that only says "CPU high" makes the on-call engineer do the diagnosis at the worst possible time

How do fixes happen without SSH?

Every Opservo finding includes the runnable command. On servers where the operator has enabled remote actions, the dashboard runs it with a confirmation and a full audit record, and Resolve-with-AI can walk a problem to done: propose, explain, run on approval, verify. Routine cases, such as restarting a crashed service or cleaning a filling disk, can be handed to an autonomous policy with cooldowns and caps. The agent stays read-only until you decide otherwise, per server.

Last updated 2026-09-23.

FAQ

Related questions

What is the minimum monitoring for a production Linux server?+

An external uptime check on the public URL, a disk-space alert, a service-down alert for the web server and the database, and SSL-expiry tracking. Opservo provides all four on the Free plan with no configuration.

Do I need Prometheus and Grafana?+

Not for a small fleet. They are the right choice when you need bespoke dashboards and have time to build them. For "is it healthy and why not", an agent that ships explanations is faster to value and needs no maintenance.

How much does server monitoring cost for a small team?+

Opservo is free for 2 servers and ₹999 per server per month after that, with users, logs and AI credits included. Comparable hosted tools typically bill per host plus per feature or per gigabyte of logs.

Is an agent safe on a production server?+

The Opservo agent opens no inbound ports, sends HMAC-signed telemetry over outbound HTTPS only, never reads .env files, never stores raw log lines, and only accepts Ed25519-signed updates. Remote actions are opt-in per server.