This is the last part of our 12-day Advent of Monitoring series. In this series, Checkly's engineers will share practical monitoring tips from their own experience. At Checkly, the commitment to reliability is not just a tagline; it's embedded in our DNA. As software engineers, we understand the critical importance of dogfooding—using our own product to ensure its robustness and effectiveness. This approach holds immense value, especially since Checkly is designed for observability.
The two key pillars of building reliable applications are: testing and monitoring. With testing, you can verify that each pull request works before it’s merged and deployed to production. Just testing isn’t enough, though. You also need to make sure that the application continues to work on production. Database rollovers, third-party outages, and unexpected spikes in traffic can all cause issues that need to be detected.
Cloud-based database providers often provide great observability out of the box. But, what if you’re developing a tricky feature locally and need more details about what your local Clickhouse is doing? There are many options, but if you’re a numbers and graphs person like me, you’ll want to be able to view the inner workings of Clickhouse in something like Grafana.
This is the ninth part of our 12-day Advent of Monitoring series. In this series, Checkly's engineers will share practical monitoring tips from their own experience. As a Checkly user, you’ve always had access to our two core check types: API and browser checks. API Checks are much cheaper, and therefore only run a curl-like request against the endpoint of your choice.
If you have large(r) customers, there is a point where they ask you for service-level agreements, or short SLAs. These are customer contracts defining different aspects of your service and what you guarantee for them. One common agreement is around availability, or, colloquially speaking, uptime. Your contract might state, and I am not a lawyer, that you guarantee that your service (or core parts of it) is available 99.99% of the time of a given period, mostly per month, quarter, or year.
Table of contents This is the seventh part of our 12-day Advent of Monitoring series. In this series, Checkly's engineers will share practical monitoring tips from their own experience. At Checkly, we manage various scheduled jobs, some of which play a crucial role in our application's functionality, and others exist to support different teams within Checkly.
When we’re testing our apps, it's a big headache to simulate what the user goes through while steering clear of the more problematic parts of those processes. These parts, often external and beyond our control and responsibility, are usually not the focus of our testing. Think external services, third-party modules, or APIs. Relying on these unpredictable elements for our tests is a no-go. Nor do we want to rework our tests to check internal implementations just to dodge these issues.
Table of contents As a golden rule of building a developer tool, you should always dog-food your own product. But, how does this work with a monitoring solution 🤔? Doesn’t it create a chicken and egg problem? Checkly uses multiple tools to monitor the platform, and tools from our competitors as well. However, we still dogfood our platform heavily. I believe this is mainly due to our engineers also liking the product and finding it quite easy to monitor their features.