Nice quick write-up, thanks! One small thing: you can self-host healthchecks ( https://github.com/healthchecks/healthchecks ), so the cost argument is a bit unfair. Promethues does have more features, and I reckon one should install it anyway, which is why the solution you outline is still probably better in a lot of circumstances.
Oh wow! I didn’t know that. Thanks for the feedback!
Hello, author of Healthchecks.io here! This is interesting, looks like in certain cases (you are running Prometheus & friends already, and are familiar with setting up the alerting rules) it’s a good option. I’m all for using the building blocks you already have!
One thing I’m curious about is in what situations people would choose to self-host. My current understanding (a guess, really), is that:
But for smaller teams and companies with no special requirements, what would motivate self-hosting? Quite a bit of engineering time goes into setting up and maintaining a production-grade service. With SaaS, this cost would be amortized across many customers. I’m thinking $16/mo should be a non-consequential expense for a company. Even a couple hours of saved engineer’s time per month should be more valuable than that. Am I wrong in thinking that?
Can only speak for myself, but a 3rd scenario might be bootstrapped startups (which might be over-represented in forums like this). I agree that $16/mo is non-consequential for a ‘normal’ company. But I try to keep recurring costs down as much as possible, as those add up, and every few-hundred bucks I can save count. So I accept that I won’t have as reliable as possible monitoring, but since I’m only starting out, and working on this full-time (which means I usually spot issues fairly quickly anyway, and the consequences are not as bad as they would be otherwise), and I have other (self-hosted) infrastructure anyway around my product, it’s an acceptable trade-off.
Should I ever achieve a reliable income stream, I’d most likely go for a hosted service instead. Maybe not for all of my self-hosted stuff. But monitoring would be one of the first things I’d outsource I think.
This is a great solution if you are already running prometheus, or if you are interested in doing so. I do like the simplicity of hchk.io for cases where I don’t want to run prometheus (and related services/tooling like grafana, and push-gateway).
Great idea and writeup though! Next time I have to run prometheus at a job, I’ll definitely keep this in mind for tracking the errant cron jobs that always seems to sneak in there somewhere.
As I mentioned in https://blog.bejarano.io/alertmanager-alerts-with-amazon-ses/#sup1, I do not run Grafana or any dashboarding because I consider it worthless and time-consuming to set up.
Thanks for the feedback!
At a small scale the expression browser is sufficient (I use it for most of my work), but once you get beyond that something like Grafana is essential.