Introduction When Grafana dashboards fail to load, teams lose visibility into system health. Empty panels, data source errors, and rendering failures block incident response and performance analysis.

Symptoms - Dashboard panels show "No data" or error messages - Error: "Data source not found" or "Datasource not configured" - Error: "Bad Gateway" or "Service Unavailable" - Panels spinning indefinitely without rendering - Grafana login page loops (authentication issue)

Common Causes - Data source unreachable (Prometheus, Elasticsearch, etc.) - Query syntax error in panel - Data source credentials expired - Grafana proxy cannot reach data source - Time range selector showing period with no data

Step-by-Step Fix 1. **Check data source connectivity**: Grafana: Configuration > Data Sources > Select source > "Save & Test"

  1. 1.Test query directly against data source:
  2. 2.```bash
  3. 3.# Prometheus
  4. 4.curl 'http://prometheus:9090/api/v1/query?query=up'
  5. 5.# Elasticsearch
  6. 6.curl 'http://elasticsearch:9200/_search?q=*&size=1'
  7. 7.`
  8. 8.Check Grafana server logs:
  9. 9.```bash
  10. 10.docker logs grafana
  11. 11.journalctl -u grafana-server -f
  12. 12.`
  13. 13.Fix data source URL or credentials:
  14. 14.Update the data source configuration in Grafana with the correct URL and authentication.

Prevention - Use Grafana provisioning for data source configuration - Monitor data source health with alerts - Use dashboard as code (JSON/YAML) for version control - Set up Grafana alerting as fallback for dashboard issues - Regularly test dashboard rendering in CI/CD