Skip to content

I wrote a better uptime robot

General Discussion by Lou1 24 replies 1.9K views
14 #1

Been running uptime monitoring for 6 years

Uptime robot and pingdom always too noisy or too quiet

Wrote my own: upbeacon, github.com/lou/upbeacon

  • Checks every 30s from 3 locations
  • Alerts only if 2 of 3 see failure for 2+ minutes
  • No email storms, no false wakeups

(wait that's 4) anyway it's python, sqlite, webhook or smtp

Been running it on a 5 dollar box for 8 months now, zero false positives. Different logic: most tools alert on first failure, mine waits for consensus. Good for cheap hosts with flaky single routes.

#2

No thanks

Lou1 said:
Alerts only if 2 of 3 see failure for 2+ minutes

Your consensus idea smart; I run few boxes in moscow and always get alerts at 3am for nothing. Will try this weekend

What license? Mit? Can add telegram bot maybe

#3

Tried it. Went down again. Upbeacon caught it. Ticket open. Waiting.

Your tool faster than my provider lol

#4

You are onto something here. I was thinking all these uptime tools are same garbage but this consensus thing actually makes sense. Deployed on my 2 dollar special last night, already had one real alert and no false ones. You should add matrix support though.

3 #5

Okay okay okay

I try to run on my ser-va but very confu-sing for me

Can you help me how to install doc-ker ver-sion

Can you help me is sqlite very fast for many check

Can you help me thank you

swimming upstream since 2019 🐟
#6

So I have been running this (well not this exact thing but the previous iteration which was a shell script that called curl in a loop and sent me emails which was terrible because my inbox became unusable) and then I found upbeacon and the thing that struck me was how the consensus model actually maps to real network behavior because if you think about it the internet is not a single path it's a graph and a single route failing doesn't mean the service is down it just means one path is down and most monitoring doesn't account for this (my previous shell script certainly didn't) and I ended up forking it (not in a hostile way lou seems chill about it) to add prometheus metrics because that's what my workplace uses and I needed to integrate it with our existing stack and lou had said no to prometheus in the issues (something about scope creep which I understand but also I needed it for wor

#7

What python version

#8

What's the 5 dollar box, lou? VPS or dedicated

swimming upstream since 2019 🐟
#9

@ana_mad: Hetzner CPX11 in Germany, 5 EUR. Not dedicated, just a VPS. SQLite is fine for personal use, maybe a few thousand checks a day. If you need more, swap to postgres, the schema is simple.

@yuki18: 3.10+

#10

Consensus model is cute but what is the latency impact. You wait for 2 of 3 to agree, that is minimum 2 minutes plus round trip to second location. For my use case I need sub-60s alert or I lose money.

Post a reply

You need an account to reply. Log in or register to join the conversation.

Post reply Preview Save draft