TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Dead man's switch without reliance on your infra

139 pointsby adamdecaf7 months ago
I wrote this Go project to implement a dead man’s switch that didn’t rely on cron jobs, timers, databases, etc on the infra it runs on. Deadcheck integrates to PagerDuty and keeps a long running incident snoozed until expected check-in times where it’ll alert unless a check-in occurs.

23 comments

remram7 months ago
If you call this a &quot;dead man&#x27;s switch&quot; I&#x27;d expect it to turn my app off when I die. E.g. &quot;switch&quot; something when something happens to a &quot;man&quot;.<p>Your own README links to this definition: &quot;A dead man&#x27;s switch is a switch that is designed to be activated or deactivated if the human operator becomes incapacitated&quot;.<p>This is a watchdog timer &#x2F; monitor &#x2F; heartbeat, setting off an alert if a timer elapses.
评论 #41810680 未加载
评论 #41810898 未加载
评论 #41810769 未加载
评论 #41820040 未加载
rozenmd7 months ago
The term of art you&#x27;re looking for is: &quot;heartbeat check&quot;&#x2F;&quot;healthcheck&quot;, or most commonly: &quot;cron job monitor&quot;.
评论 #41810694 未加载
评论 #41810619 未加载
评论 #41810585 未加载
评论 #41811332 未加载
cduzz7 months ago
I guess I&#x27;m an oldster shaking my fist at clouds, but ...<p>Depending on where you live, and if it matters, give it to an attorney.<p>Maybe use this to trigger the notification to your attorney, with instructions on how to double check things before doing things.
评论 #41811170 未加载
9dev7 months ago
I’m not sure I understand what the application itself does; as far as I can see, it basically configures the external services to carry out the actual checks and ensures this configuration is up to date?<p>Wouldn’t it be better to do this as part of a Terraform script or something? Not to take away from the project, it sure looks neat—just wondering if I really want to deploy yet another, independent IaC tool.
评论 #41810539 未加载
评论 #41810372 未加载
评论 #41810384 未加载
focusedone7 months ago
I feel like posting a software project to HN and meeting criticism is some near-end-stage of programming mastery.
评论 #41826064 未加载
评论 #41816264 未加载
评论 #41811155 未加载
herpderperator7 months ago
So... like BetterStack&#x27;s heartbeat monitor? [0]<p>[0] <a href="https:&#x2F;&#x2F;betterstack.com&#x2F;docs&#x2F;uptime&#x2F;cron-and-heartbeat-monitor&#x2F;" rel="nofollow">https:&#x2F;&#x2F;betterstack.com&#x2F;docs&#x2F;uptime&#x2F;cron-and-heartbeat-monit...</a>
评论 #41811025 未加载
评论 #41810856 未加载
siliconc0w7 months ago
A possible integration are messaging apps that support send later. I sometimes set these up if I&#x27;m going hiking.
评论 #41810503 未加载
christina977 months ago
I sometimes think about a “dead man service”: you leave instructions (that you upload to the service), then when you pass away&#x2F;etc, the service operators go and follow your instructions and do whatever you asked for. You’d pay some pre-agreed sum, possibly annuity-type subscription, and at the end we go and follow your wishes. Basically a technically competent will executor. It’s probably too much to expect your family to know how to operate your systems. Maybe you encrypt the instructions and give fractional keys to family etc.
评论 #41811407 未加载
评论 #41811123 未加载
INTPenis7 months ago
I did something similar years ago when I was working with observability. Prometheus alertmanager triggers a special alert constantly that calls a lambda (or any webhook), so when alertmanager dies or is unable to alert then the lambda will send an alert over a 3rd party push service to notify ops that alertmanager is down.<p>We called it a dead man&#x27;s switch but it was really just a way to monitor alertmanager.
评论 #41811334 未加载
EGreg7 months ago
Speaking of not using anyone’s specific infra, we deployed software on blockchains to do this.<p>We had to implement a “heartbeat” and “succession” in our blockchain-based solutions for organizations to control things together.<p>It’s part of our “application suite for organizations” where each one is sort of this general-purpose LEGO block that could be used to build a custom solution.<p>In each case, you’d enter some parameters and create an instance from a Factory. We made it simple and secure for any organization to use this.<p>In this specific one, ControlFactory is used to create ControlContract instance that can be used to control an address together (to sign off things collectively, like transfer tokens or call an arbitrary method on a different address)<p>We had to handle what happens if the M of N people don’t show up for a while. And we said they have to call a heartbeat() method every so often. If they fail to call it then control temporarily passes to the next group in succession, until the OGs can finally call the heartbeat() method again.<p>Here is more info on the why: <a href="https:&#x2F;&#x2F;community.intercoin.app&#x2F;t&#x2F;intercoin-applications-control-and-multisignature&#x2F;2898" rel="nofollow">https:&#x2F;&#x2F;community.intercoin.app&#x2F;t&#x2F;intercoin-applications-con...</a><p>And here are the rest of the blockchain apps for organizations: <a href="https:&#x2F;&#x2F;community.intercoin.app&#x2F;t&#x2F;applications-of-intercoin-making-crypto-mainstream&#x2F;87" rel="nofollow">https:&#x2F;&#x2F;community.intercoin.app&#x2F;t&#x2F;applications-of-intercoin-...</a><p>You can go ahead and use it, the factory it’s been deployed on many EVM blockchains, at the same address.<p>PS: fun fact, you can configure a ControlContract to also manage calling methods on itself, thereby creating custom “policies” for organizations when it comes to granting&#x2F;recoving rights of other people to the quorum.
turtlebits7 months ago
I&#x27;m not sure running an additional service plus a SaaS requirement is better than relying on infra. Standing up this service is going to rely on your infra. What if it goes down?<p>If you&#x27;re going to have to write a scheduled check-in anyways, why not use something like cronitor and reduce the complexity? (they host the check-in endpoint)
评论 #41810738 未加载
wil4217 months ago
Any support for something besides pager duty? I work for a telco and there are so many different heartbeats we rely, this project seems very useful for something like that. The config file looks much better than the python&#x2F;perl&#x2F;bash whatever scripts we have scheduled on our systems.
评论 #41811359 未加载
arisAlexis7 months ago
The problem with these kind of project is that they are no good for very serious situations. Say Navalny set it up. They kidnap someone, the make you delete the pagerduty service and then kill you. Immutable &#x2F; undeletable tasks would be needed.
roshan87 months ago
Nice one! Do you have any plans to support something else apart from Pager duty. I have been using Squadcast.com for my hobby project monitoring. Integration with that would be nice. I&#x27;m open to create a PR if you are interested.
评论 #41810847 未加载
v3ss0n7 months ago
Better have something that runs off the cloud. PagerDuty is not something under your countrol. A stuff as imporant as dead man switch should not rely on someone&#x27;s service.
评论 #41812751 未加载
评论 #41811541 未加载
encoderer7 months ago
Cool trick using PagerDuty like that.<p>If you don’t want to use a service like Cronitor, you can self-host this without the usual fear that an outage will also take down your monitoring.
评论 #41810820 未加载
grahamj7 months ago
Neat. We use OpsGenie to monitor our alerting infra and it has deadman&#x2F;heartbeat support so something like that is another way to go.
评论 #41811343 未加载
lopkeny12ko7 months ago
[flagged]
评论 #41810788 未加载
评论 #41810576 未加载
评论 #41810454 未加载
评论 #41813321 未加载
joshbetz7 months ago
Very clever. I have Alertmanager in a second region so it can check on my first Alertmanager, but this is much nicer.
评论 #41810923 未加载
评论 #41811352 未加载
hiatus7 months ago
Do the people on the receiving end of a pagerduty notification require pagerduty accounts?
评论 #41811361 未加载
ForHackernews7 months ago
I don&#x27;t know about the rest of the people here, but I aim to outlive PagerDuty.
xyst7 months ago
I’ll use this for my next wormable vuln instead of hard coding DNS checks ;)
jbverschoor7 months ago
Not to be confused with deadmanssnitch.com