Skip to content

Dashboards (Grafana)

Grafana provides real-time visualizations of the BBC News ETL pipeline metrics collected by Prometheus. Dashboards allow developers and operators to quickly assess pipeline health, throughput, and failures.


1. Overview

  • Grafana connects to Prometheus as the data source.
  • Provides custom dashboards for producers, consumers, RabbitMQ, and overall pipeline performance.
  • Dashboards are pre-configured via JSON files or Helm charts.
  • Supports alerts and notifications (Slack, email, etc.) for critical conditions.

2. Example Dashboards

Dashboard Description
Producer Overview Shows articles scraped, work queue length, scrape failures, and retries by section.
Consumer / ETL Dashboard Displays messages consumed, ETL success/failure counts, retry attempts, and DLQ messages.
RabbitMQ Queue Status Queue depth, message rate, DLQ count, consumer count.
Pipeline Health Combined metrics for producers, consumers, and RabbitMQ, including scaling events (KEDA).

3. Integration

  • Grafana is included as a Docker container for local development or deployed via Helm chart in Kubernetes.
  • Dashboards can be imported/exported using JSON.
  • Use templating variables to switch between sections, queues, or environments dynamically.

4. Best Practices

  • Keep critical metrics at the top for quick visibility.
  • Configure alerts for DLQ accumulation, work queue backlog, or high ETL failure rate.
  • Use annotations to mark deployments or incidents on dashboards.
  • Combine logs and metrics for root-cause analysis.