Howdy (an introduction)

Howdy!

I’m a software engineer with a science/math background and anywhere between 4 and 9 years of experience – depending on when you want to start counting ;) – doing work in a variety of different fields including instrumentation and scientific software, numerical methods in scientific computing, and most recently “science gateway” development, which involves a lot of automation and Kubernetes knowledge!

I don’t quite remember how I learned about Crystal but it’s been bouncing around in my head for at least a month now. I’ve decided to start a new project in Crystal and likely learn more than a few things along the way: the un-originally named Crystal Uptime Monitor (name pending final approval)! Unsurprisingly, this will look at different servers/hosts and let me know if something goes wrong (website is down, server is un-pingable, certificates are close to expiry).

I aim to minimally:

  • Make the monitoring targets yaml configurable
  • Write it as a TUI
  • Optionally enable desktop notifications
  • Optionally enable Slack message notifications

Despite having done work in a variety of different languages–LabVIEW, C++, Python, bash, nushell–Crystal just seems to scratch an itch in a some part of my brain I didn’t know was there.

Hope to see y’all around!

– ana

13 Likes

First of all, welcome to the Crystal community! I hope success with your project!

Considering that it is an infrastructure related project, it makes perfectly sense to use Crystal. And regarding to web protocols, the language has everything that you would need.

Thanks! I’m excited to work on the project! The acronyms for Crystal Uptime Monitor are a little bit crummy, but that inspired me to give it the cute name of “crumb” :cookie:

As excited as I am, I’m sure I’ll run into some trouble even after reading through the friendly manual. Luckily y’all seem just as friendly :)

Hi Ana,

I found your project idea very interesting, and it’s actually something I was looking for – if there were any projects already done in Crystal Reports.

If I understand correctly, what you intend to do would be something similar to what the Blackbox-Exporter in Prometheus does?

I’m interested in doing something along those lines (but I still need to learn more about the language and its features).

Hey Alan. Yep, I was thinking of something along those lines, although truthfully I’m more inspired by software like uptime-kuma and gatus.

I’ll be sure to share whenever I get some minimal functionality going so you can have a look.

1 Like

Hell yes! As a recovering SRE (just kidding, I’m still neck-deep in it) it’s great seeing infrastructure projects in Crystal.

I have no comments on originality (I like when you can infer what a project does by its name), but I’d recommend having a teenager take a look at the acronym to determine whether you want to use it. An adult with the maturity of a teenager will also work.

I agree, and I’m one step ahead of you, friend; hence the “(name pending final approval)”. As I’m one of those adults with the maturity of a teenager, the local repo is named exactly what you might be thinking, but I wasn’t going to make my first interaction on the forum ban-worthy :)

For whatever it’s worth, I think CRUMB, the CRystal Uptime Monitor (with a little B on the side) makes for a project logo that almost draws itself :cookie: :honeybee:

3 Likes

IMHO Crumb is interesting because it joins other kitchen concepts used on internet tech, like cookies. :cookie:

So an admin can think of each “crumb” as one individual “status signal” sent by the monitor.

I like it. Just my 2c.