I wrote this app to practice my React, Node, Mongo, Redis and Docker skills
Geoffroy Empain
Posted on November 4, 2020
Hi there 👋
Last week, as I was struggling to connect to my Gitlab.com account, I noticed that their status page was mentioning operational while in reality they were down - they later reported the incident.
That gave me the idea (spoiler alert, it's not something new) to create a very simple, painless website monitoring app where I could just add endpoints easily and get notified when something went down. Sure, I could use Prometheus and Grafana, but it's a hassle to manage when you've got several projects to monitor - and for most projects, I honestly don't look at CPU usage etc, I just want to know if they're up or down, so deploying the whole stack is unnecessary. Then you've got things like UpDown and Uptime Robot - and I'm certainly missing many others - but where's the fun when I have spare time and could practice my React, NodeJS, and MongoDB skills ?
I also wanted to experiment with Redis which I've heard so much about, configured in so many docker-compose.yml
files but never actually used in code. I've also wanted to use Stripe's API and see how I could integrate billing in my apps for a while, so I figured this would be a good occasion - and I have to tell you, it is by far the most well designed, documented and sdk-complete API I have ever used (disclaimer, I don't work for Stripe, I just think it's important to recognize when something's truly great).
My requirements were quite simple:
- simple way to add endpoints and customize request method and headers
- simple way to configure notifications (email, Slack, Mattermost...)
- a way to check my endpoints from different places in the world
- fine tune the amount of down time before getting a notification
- have a nice status page with cool - but meaningful - graphs
I also needed a cool name, so I went with "Probe" - I found the idea of having probes around the world a good match.
I published the app this week at https://probe.sh and would love to know what you think ! I was thinking about open sourcing it on Github as probe-sh/probe so anyone could self-host and help making it better - what do you think ? What license should I use ?
I've only deployed probes to France and Canada for now, but if you want other locations, additional notification types or features, let me know on Twitter @probe_sh or on Github 🚀. I'm already planning to add a public status page for endpoints and a way to group them - stay tuned !
Looking forward to your feedback 🎉
Posted on November 4, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.