Skip to main content

Health Checks

Canary Checker is a Kubernetes native health check platform that periodically runs various types of tests:

  1. Synthetic

    Synthetic checks periodically run to directly test services and applications by generating requests using HTTP, SQL, Mongo, Redis, LDAP, etc.

  2. Passive

    Passive checks consolidate alerts from monitoring systems like Prometheus, Datadog, Dynatrace, CloudWatch, and ElasticSearch.

  3. Infrastructure

    Active infrastructure checks provision infrastructure (e.g., EC2 Instances, Kubernetes Pods) and then run synthetic checks against them to verify the ability to provision infrastructure. This process detects issues in infrastructure provisioning.

  4. Integration

    Integration checks run automated test suites using tools like Playwright, JUnit, Newman, and K6 to validate end-to-end functionality across services and infrastructure.

Metrics Exporter

In addition to returning a pass/fail status, health checks can export metrics to Prometheus, replacing the need for many custom Prometheus exporters.

Scripting

Evaluate the health of checks using scripts in CEL, JavaScript, or Go Templating. Scripts can also filter and transform alerts from external systems.

Dashboard

The health checks page provides a high-level view of the overall health of all services, infrastructure, and applications. It surfaces recent failures and provides high-level latency and reliability metrics.

Prometheus

Prometheus metrics are exposed from health checks to provide high-level visibility into latency, error rates, and other metrics. This allows monitoring the health of services and applications using existing Prometheus alerts and Grafana dashboards.

Synthetic

Synthetic checks periodically run to directly test services and applications by generating requests using HTTP, SQL, Mongo, Redis, LDAP, etc.