Healthchecks.io Hosting Setup, 2022 Edition
Here’s the summary of the hardware and the software that powers Healthchecks.io.
Here’s the summary of the hardware and the software that powers Healthchecks.io.
Let’s say you are writing a shell script for a systems housekeeping task. Perhaps the script is uploading backups to a remote server, or it is cleaning up old data, or it is making a measurement and submitting it to a somebody else’s HTTP API. What is the least cumbersome way for the script to contact you in case of problems? Let’s say you want to be contacted via email – how to make it work?
When the Daylight saving time starts, and the computer’s clock jumps forward, what does cron do? If the clock jumps from 1AM to 2AM, and there is a job scheduled for 1:30AM, will cron run this job? If yes, when? Likewise, when the Daylight saving time ends, and the clock jumps backward, will cron possibly run the same scheduled job twice? Let’s look at what “man cron” says.
Healthchecks.io pinging API has always been based on UUIDs. Each Check in the system has its own unique and immutable UUID. To signal a start, a failure, or a particular exit status, clients can add more bits after the UUID: This is conceptually simple and has worked quite well. It requires no additional authentication. The UUID value is the authentication, and the UUID “address space” is so vast nobody is going to find valid ping URLs by random guessing any time soon.
I am currently trialing pgmetrics and pgDash for monitoring PostgreSQL databases. Here are my notes on it. pgmetrics is a command-line tool you point at a PostgreSQL cluster and it spits out statistics and diagnostics in a text or JSON format. It is a standalone binary written in Go, and it is open source. Here is a sample pgmetrics report. Rapidloop, the company that develops pgmetrics, also runs pgDash – a web service that collects reports generated by pgmetrics and displays them in a web UI.
Time flies and Healthchecks.io is already 6 years old. Here’s a quick review of notable recent events and the project’s current state.
Here’s is a look back at the privacy-related changes and milestones of the Healthchecks.io website. If you also run a small SaaS, feel free to compare the notes. If you have suggestions or questions, please let me know!
Healthchecks.io now supports two-factor authentication using the WebAuthn standard. Here is how it works: in the Account Settings page, users can see their registered FIDO2 security keys and register new ones.
I recently found out Travis CI is ending its free-for-opensource offering, and looked at the alternatives. I recently got badly burned by giving an external CI service access to my repositories, so I am now wary of giving any service any access to important accounts. Github Actions, being a part of Github, therefore looked attractive to me. I had no experience with Github Actions going in. I have now spent maybe 4 hours total tinkering with it.
The Healthchecks.io system status page at status.healthchecks.io recently received a revamp. Here are my notes on the new version. First up, the components section shows the current and historic status of components: Dashboard shows the status of the main website, healthchecks.io. “Operational” state here means the website responds to HTTP requests, and has a working connection to the PostgreSQL database.