Hashlogics
Glossary

What is a dead man's switch?

A nightly job that quietly stops running looks identical to a nightly job that has nothing to do. A dead man's switch is the only thing that tells the two apart.

Dead man's switch

heartbeat monitoring

A dead man's switch is a monitor that expects a periodic check-in from a scheduled job, then alerts if the check-in is late. It flips the usual alerting logic. Instead of watching for an error, it watches for silence.

The name comes from the railway lever a driver has to keep pressing. Let go, and the train brakes on its own. A software dead man's switch works the same way. Your job pings a monitoring endpoint at the end of every successful run. The monitor does nothing as long as pings keep arriving on schedule.

Miss the expected window, whatever it is, and the monitor assumes the job is gone rather than merely quiet. It alerts a person, because a scheduled job that stops checking in is a different problem than a scheduled job that throws an error.

Why it matters

Most monitoring can't see this failure at all

Error monitoring, uptime checks, and log alerts all share one assumption: something has to run and fail before there's anything to catch. A cron job that got deleted produces no error. Neither does a server that never came back up after a redeploy, or a scheduler process that crashed silently. There's nothing to throw, because nothing executed.

That's the gap a dead man's switch closes. It doesn't watch the job. It watches for the job's absence, which is the only signal available when the job itself has stopped existing in any observable way.

The failure mode this catches is common and expensive: a nightly billing sync, a report generator, or a data pipeline that quietly stopped weeks ago. Nobody notices until a downstream number looks wrong, and by then the gap has to be reconstructed by hand.

  • 01The check-in interval has to allow for normal variance, or a slow run trips a false alarm every week.
  • 02The ping fires on success, not on start, so a job that starts but hangs still counts as missing.
  • 03Services like Cronitor, Healthchecks.io and Better Uptime offer this as a hosted endpoint; most teams don't need to build it themselves.
Watching for silence instead of errorsLive
  1. ScheduleJob is expected to run on a fixed interval.
  2. RunJob executes and finishes normally.
  3. Check-inJob pings the monitor on success.
  4. WindowMonitor waits for the next expected ping.
  5. MissedNo ping arrives inside the window.
  6. AlertA person is told, not just a log.

Ordinary monitoring stops at 'Run'. A dead man's switch is built around the step after it, where a job that never restarted produces nothing to watch.

Questions, answered

Common questions

01How is a dead man's switch different from uptime monitoring?

Uptime monitoring checks whether a service responds when asked. A dead man's switch checks whether a scheduled job checked in when it was supposed to, with no request needed to trigger it. A server can be fully up while the one cron job on it has silently stopped running.

02What should the check-in window be set to?

Slightly longer than the job's normal runtime plus its schedule interval, so a slow but successful run doesn't trip a false alert. A daily job that usually finishes in ten minutes might get a two-hour window; too tight and every alert becomes noise someone starts ignoring.

03Does every scheduled job need one?

Any job whose failure would go unnoticed until someone checks the output by hand is a candidate. A job that writes to a dashboard people look at daily has a natural backstop. A job that feeds a report nobody opens until month-end does not.

Written by Abdul Basit, CEO, HashlogicsVerified
Start

Let’s build the one that runs after.

We build AI agents and automation, then stay on under an agreed service level. A senior engineer reads every brief, and your call gets scheduled within 24 hours.

What happens next

  1. 01

    You send a brief or book a call

    Two minutes, whichever you prefer.

  2. 02

    A senior engineer replies within 24 hours

    Not a sales rep.

  3. 03

    Honest scoping, in writing

    And if we’re not the right fit, we say so.

Abdul Basit, CEO of Hashlogics

“I started Hashlogics because too many teams ship a demo, get paid, and disappear. We build to a standard we’d run ourselves — and we stay to keep it running.”

Abdul Basit · CEO · a direct line

Not ready to talk? Take the checklist.

12 questions to ask any AI agency before you sign. They separate a demo shop from a team that ships to production.

Get the checklist

Free · no newsletter