New to Kestra?
Use blueprints to kickstart your first workflows.
Audit KrakenD API gateway health and ingress latency, detect backend service timeouts, and alert via Slack to prevent microservice client traffic failures.
KrakenD is an ultra-high-performance open-source API Gateway written in Go, capable of processing tens of thousands of requests per second with sub-millisecond overhead. Adopted across enterprise microservice architectures, Kubernetes platforms, and high-throughput mobile backends, KrakenD serves as the primary ingress aggregation layer between client applications and downstream services. When backend services experience cascading latency, or when configuration updates in krakend.json introduce invalid endpoints, the gateway ingress layer can reject traffic, leaving mobile and web clients facing connection timeouts. This blueprint deploys an automated operational sentinel that continuously polls KrakenD runtime health endpoints, performs synthetic canary transit probes, routes incident alerts to Slack, and maintains execution audit lineage.
periodic_krakend_audit (io.kestra.plugin.core.trigger.Schedule) initiates recurring surveillance every 15 minutes. Shipped disabled so initial connectivity can be verified manually.probe_gateway_health (io.kestra.plugin.core.http.Request) invokes GET /__health to verify that the KrakenD core daemon is running and accepting HTTP requests.probe_gateway_canary (io.kestra.plugin.core.http.Request) invokes GET /__echo to execute a synthetic end-to-end canary transit test validating gateway router pipelines.classify_gateway_status (io.kestra.plugin.core.flow.Switch) analyzes probe response data:GATEWAY_OUTAGE: Fires if the health check returns non-200, dispatching a high-severity incident notification via io.kestra.plugin.slack.notifications.SlackIncomingWebhook.CANARY_FAILED: Fires if the synthetic canary probe fails, routing a warning to Slack and evaluating diagnostic logs.HEALTHY: Confirms nominal gateway throughput and responsive ingress routing.log_sentinel_audit_summary (io.kestra.plugin.core.log.Log) writes an immutable execution log recording evaluated status codes and audit lineage.errors handler catches network connection drops or container crashes, firing an emergency outage alert to Slack.dry_run: true prevents automated mutations during health evaluations.KrakenD provides high-throughput request processing but lacks built-in alerting, cron scheduling, and multi-channel incident escalation. Relying on custom shell scripts or ad-hoc cron jobs introduces maintenance overhead, hard-coded credentials, and zero execution visibility. Kestra provides a declarative YAML blueprint featuring scheduled triggers, masked secret management, conditional branching, and comprehensive execution observability.
devopsfaith/krakend:latest) requiring zero commercial licensing.SLACK_WEBHOOK_URL: Slack incoming webhook URL for operational notifications and incident routing.docker run -d --name krakend-test -p 8080:8080 devopsfaith/krakend:latest
SLACK_WEBHOOK_URL in your Kestra namespace secrets.dry_run: true).log_healthy_state records a successful health check response.docker stop krakend-test) and re-running the flow to verify alert_krakend_network_failure.periodic_krakend_audit to activate recurring 15-minute surveillance.io.kestra.plugin.pagerduty.notifications.PagerDutyAlert for high-severity gateway outages.io.kestra.plugin.prometheus.