Server Monitoring

A dying server doesn't send a goodbye. It goes quiet. Quiet is what Hoppla listens for.

A light agent on the box checks in on a fixed interval: host vitals (CPU, memory, disk) plus a heartbeat that says "still here." Hoppla remembers when it last heard from the machine. Miss the next report past the grace window and the check goes down. A box that drops off the network, or whose agent has died, can't send the report it owes you. That missing report is the alert.

SRV / SAMPLE OUTPUT

web-01 last report 14s ago interval 60s grace 5m cpu 22% mem 61% disk 48% UP

Fictional values. Not a live measurement.

01 / What it does

Liveness for the box itself, not the site running on it

A small agent on the server checks in on the interval you set. It sends the hostname, its vitals (CPU, memory, disk, load) and a heartbeat. Hoppla records each report and watches one timestamp: when the last one landed. No report inside the report interval plus your grace window, and the check goes down. So does a vital past its threshold, like 90% CPU or 95% disk by default. A server that loses the network or whose agent process has died can't check in, so the missing report becomes the signal. Nothing to poke from the outside, no port to probe.

What’s included

  • Lightweight agent on the host: reports a heartbeat, not a per-function APM trace
  • Reports hostname and host vitals: CPU, memory, disk
  • Configurable report interval: how often the agent checks in
  • Configurable grace time: how late a report can be before the check fails
  • Silence-based: check goes down when no report lands within report interval + grace
  • Catches a box that drops off the network or whose agent process dies
  • Can live on the same monitor as the site's uptime, SSL, and DNS checks. One alert stream, one bill
02 / How it works

Under the hood.

01

Install the agent on the box

A lightweight agent runs on the server you want watched. It reads the hostname and the host vitals (CPU, memory, disk) and knows where to report. It isn't an APM tracer hooking into your runtime. It's a small process whose main job is to check in.

02

The agent reports on its interval

On the report interval you configured, the agent sends a heartbeat plus its vitals. Hoppla timestamps each one. As long as reports keep landing on schedule and the vitals stay under your thresholds, the check stays green, and you can glance at the box's last-known CPU, memory and disk.

03

Hoppla tracks one timestamp: last seen

For liveness, every report moves a single value: when this host was last heard from. From that timestamp plus the report interval, Hoppla knows when the next one is due. The box tells Hoppla it's alive. Hoppla doesn't guess from the network edge.

04

Silence past the grace window fails the check

When the report interval plus your grace time goes by with nothing, the check goes down and the alert fires. Set the grace window to absorb a report that lands a few seconds late. A real outage, network gone, agent dead, box powered off, blows straight through it.

03 / Why it matters

The part that actually moves the needle.

01heartbeat, not a trace

Liveness, not a tracing tax

This watches whether the host is alive and reports its vitals. It doesn't instrument every function call the way an APM does, so it's light enough to leave running on a small VPS. A heartbeat costs the box almost nothing to send.

02silence = down

A dead box can't ask for help

The failure that matters most is the one where the server can't tell you anything: network gone, kernel panic, agent killed. A silence-based check catches exactly that. The alert is the report that never came, not an error the dying box would have had to send first.

03interval + grace

Late isn't down

You set the report interval and the grace window. A report that arrives a few seconds behind doesn't trip anything. Lateness only takes the check down once the whole window passes empty, a real miss, not jitter.

04 / For every team

Whoever you are, this lands differently.

Solo SaaS founder

Your whole stack rides on one VPS, and the night it drops off the network is the night nobody notices, because there's no "you" but you. Drop the agent on the box. While it's alive you can glance at its CPU, memory and disk; once it goes quiet past the grace window, the alert fires. It's light enough that running it on one small box doesn't tax the thing you're trying to keep up.

Small agency

A box per client, and no one really owns watching them. Put the agent on each one. Every server's heartbeat and vitals land in the same Hoppla account as that client's uptime and SSL checks. A database host going dark shows up where you were already looking, instead of being the server everyone forgot was a server.

Large agency

"Is the box up?" doesn't need per-function tracing. But APM suites charge per host as if it did. Run the light agent on the hosts that matter, up to 25 on Pro, and get one last-report timestamp per machine. Account managers get a straight liveness answer per client, without an APM contract sized for your whole estate.

Reseller / hosting provider

Server liveness is a clean hosting add-on. Install the agent on the boxes you manage and sell heartbeat monitoring as a tier under your own brand and domain. Customers see your name on the alert, not Hoppla's. It runs on the same platform you already resell uptime and SSL on, so it's a new line item with nothing new to stand up.

Switching tools

Monitoring somewhere else? Bring your setup with you.

Import the monitors you already run in another tool. What comes across depends on the provider. Run both side by side for 24 hours or 7 days before you switch.

  • Guided import
  • Shadow run before you switch
  • Coverage varies by provider
Import from
  • Oh Dear
  • Uptime Robot
  • Better Stack
  • Pingdom
  • StatusCakeBeta
  • CronitorBeta
  • Healthchecks.ioBeta
  • Statuspage

The importer opens in your workspace once you have access.

Get early access
FOR HOSTERS & RESELLERS

Offer server-liveness monitoring as a hosting add-on, alerting under your brand.

See the reseller program
05 / FAQ

Straight answers.

How is this different from a full APM agent like Datadog or New Relic?

Those instrument your application (every function, query and trace) and bill per host to match. Hoppla's server check answers a blunter question: is the box alive, and what are its vitals? The agent stays light because all it owes you is a heartbeat plus CPU, memory and disk on an interval. Need deep request tracing? Use an APM. Need to know when a server goes dark without paying APM prices across a fleet? This is the tool.

Why a heartbeat instead of pinging the server from outside?

An outside-in ping tells you the network path to the box looks fine. It doesn't tell you the agent or the box is healthy, and it can't see a host that's reachable but failing. A report-in heartbeat flips it: the server proves it's alive on its own schedule, and the absence of that proof is the alert. A machine that's truly down can't send the report it owes, which is exactly the failure you want caught.

What exactly trips the alert?

Silence, or a vital past its limit. Once the report interval plus your grace time passes with no new report, the check goes down and the alert fires. A report showing CPU at 90% or memory or disk at 95% (the defaults, all adjustable) takes it down too. A report that lands a little late stays inside the grace window and keeps the check green.

Does the server check alert me when my website is down?

Not on its own. It watches the host's liveness, not your HTTP responses. For "is the site serving 200s?" you add an uptime check, which is re-confirmed from a second region before it alerts. Both can live on the same monitor, so one machine gives you host liveness and site availability in one place, on one alert stream.

Your next step

Hear the silence when your box goes dark.

Checks, alerts and status pages in one workspace. Now in early access: join the list for an invite.