CNCJ - May, 2023

Synthetic Testing with Canary Checker

Summary

Canary Checker https://github.com/flanksource/canary-checker is an open-source, Kubernetes native health check framework that supports 3 different types of checks:

Active Application health checks involve sending periodic requests to the service or application and checking the response to ensure that it is working correctly, Active health checks are proactive and can detect issues quickly, but they can also introduce some load on the system being monitored. Active Infrastructure health checks are similar to application health checks, but instead of sending a request to the application it sends a request to the infrastructure to deploy a new application or infrastructure component e.g. a new Kubernetes pod or EC2 instance. Passive health checks rely on monitoring the activity in the system, analyzing it, and detecting anomalies or errors. Passive health checks are less intrusive than active health checks, but they may not detect issues as quickly. Canary Checker supports many different protocols including:

  • Network (HTTP, ICMP, DNS, TCP)
  • Data Sources (SQL, Mongo, Redis, Elasticsearch)
  • Alerts (Prometheus, AWS Cloudwatch)
  • Infrastructure (EC2, Kubernetes, Helm, Docker)
  • File Systems ( Local, Git, SMB/CIFS, SFTP, S3, GCS)
  • Integration (Junit, JMeter)
  • DevOps (Github, Azure Devops)

[Technicality rating: 3/4] (Familiarity with GitOps, Helm, and Grafana/Prometheus would be beneficial)

CNCF Event link: Synthetic Testing with Canary Checker

Meetup Event link: Synthetic Testing with Canary Checker

Session Recording