StatusCake

StatusCake GitHub Projects

statuscake

The StatusCake API allows users of the platform to come up with custom ways of interacting and making our tools work for their specific needs. In this blog post I’m going to look at a few recent projects on GitHub that use the StatusCake API to either save you time or do something interesting with your test data.  

status-cake-push-client

vparpoil/status-cake-push-client: Python App to push regular updates to StatusCake (github.com)

In some instances, it’s not possible for StatusCake uptime tests to monitor certain secure system configurations. We offer a workaround for this, push monitoring. Push monitoring is the reverse of a standard uptime test, your server or device contacts our service to let us know it is still active. This is sometimes known as heartbeat monitoring.

This application created by GitHub user vparpoil is a allows a user to easily create the following type of PUSH tests:

  • Ping tests
  • MongoDB Connection tests
  • Curl test with string match
  • Port testing

Requirements

  • Python
  • (Optional) The pymongo python package

You can get a unique push test URL by navigating to the Push Test tab found under the uptime monitoring section to the left of the StatusCake status page.

Graphical user interface, application, Teams

Description automatically generated

Once you have set up your test you’ll receive a unique URL that will look something like this:

https://push.statuscake.com/?PK=39083f438b0d2fe&TestID=6348054&time=0

Next, all you need to do is create a tests.json file, and add a test including the required test details and your unique URL in the StatusCakeUrl property, like this basic ping test:  

Text

Description automatically generated

Tip: you can just copy the existing testsSample.json and remove/duplicate tests you need or don’t need.

StatusCake Exporter

chelnak/status-cake-exporter: A Prometheus exporter for StatusCake (github.com)

This application created by GitHub user chelnak is a Prometheus exporter for StatusCake test data. Prometheus is a tool that’s used for monitoring applications and services, it allows users to store time series metrics. In this project it is used with Grafana to render the metrics into charts, graphs and other flexible visualizations.

Requirements:

  • Docker
  • Python 3.7 with the following dependencies:
  • prometheus-client==0.7.1
  • requests==2.22.0
  • ConfigArgParse==0.14.0
  • setuptools==58.3.0
  • Kubernetes (optional)
  • Helm 3 (optional)

Once you’ve cloned the repo and followed the configuration steps listed in the readme you’ll be able to export the results of your StatusCake uptime tests to Grafana and produce something like this statusmap panel to get a useful visualisation.

Chart

Description automatically generated

This sort of visualisation is bound to win you some brownie points with management!

statuscake-go

StatusCakeDev/statuscake-go: StatusCake Go SDK (github.com)

The Go implementation of the StatusCake API client. This is one of ours!

Requirements:

  • one of the last three major releases of Go

You’ll need to either use Go module support to import the dependencies or just install the StatusCake-go package using the command:

Once installed, open or create a .go file, instantiate an API client and execute a request, like so:

Text

Description automatically generated

Couldn’t get any simpler than that! You should also keep an eye on our implementations for JavaScript and Python, they are both sill in alpha right now but that shouldn’t stop you from talking a look, we’d love your feedback.

You can view these and our other repositories here.

X-RM Blink1 Service

x-rm/Blink1-StatusCake (github.com)

This application controls a small Blink(1) device. Blink(1) started as a Kickstarter project and allows a user to configure the colour, brightness and pattern of a small USB LED dongle. Users of a Blink(1) device will usually configure this with a service such as IFTTT but GitHub user nmg196 has created a configurable application that checks the status of a user’s StatusCake uptime tests & SSL and will cause the Blink(1) device to emit a bright red warning light if there are any failed tests.

A picture containing text, electronics, computer, computer

Description automatically generated

If you own a Blink(1) all you need to do to get set up is clone the repo and update the App.config file with your StatusCake username and API key in before installing the Windows Service. Pretty niche, but this project stood out as being quite a novel use of the StatusCake API!

Conclusion

I’ve touched on a few projects found on GitHub that can enrich your StatusCake experience, but don’t stop here, there are many more out there to be found. Have look yourself, perhaps you’ll find a project that will be a perfect solution for you, or perhaps you’ll get inspired to create your own. Cheers!

Share this

More from StatusCake

Buy vs Build in the Age of AI (Part 3)

5 min read Autonomous Code, Trust Boundaries, and Why Governance Now Matters More Than Ever In Part 1, we looked at how AI has reduced the cost of building monitoring tools. Then in Part 2, we explored the operational and economic burden of owning them. Now we need to talk about something deeper. Because the real shift isn’t

Buy vs Build in the Age of AI (Part 2)

6 min read The Real Cost of Owning Monitoring Isn’t Code — It’s Everything Else In Part 1, we explored how AI has dramatically reduced the cost of building monitoring tooling. That much is clear. You can scaffold uptime checks quickly, generate alert logic in minutes, and set-up dashboards faster than most teams used to schedule the kickoff

Buy vs Build in the Age of AI (Part 1)

5 min read AI Has Made Building Monitoring Easy. It Hasn’t Made Owning It Any Easier. A few months ago, I spoke to an engineering manager who proudly told me they had rebuilt their monitoring stack over a long weekend. They’d used AI to scaffold synthetic checks. They’d generated alert logic with dynamic thresholds. They’d then wired everything

Alerting Is a Socio-Technical System

3 min read In the previous posts, we’ve looked at how alert noise emerges from design decisions, why notification lists fail to create accountability, and why alerts only work when they’re designed around a clear outcome. Taken together, these ideas point to a broader conclusion. That alerting is not just a technical system, it’s a socio-technical one. Alerting

Designing Alerts for Action

3 min read In the first two posts of this series, we explored how alert noise emerges from design decisions, and why notification lists fail to create accountability when responsibility is unclear. There’s a deeper issue underneath both of those problems. Many alerting systems are designed without being clear about the outcome they’re meant to produce. When teams

A Notification List Is Not a Team

3 min read In the previous post, we looked at how alert noise is rarely accidental. It’s usually the result of sensible decisions layered over time, until responsibility becomes diffuse and response slows. One of the most persistent assumptions behind this pattern is simple. If enough people are notified, someone will take responsibility. After more than fourteen years

Want to know how much website downtime costs, and the impact it can have on your business?

Find out everything you need to know in our new uptime monitoring whitepaper 2021

*By providing your email address, you agree to our privacy policy and to receive marketing communications from StatusCake.