What's Actually Happening
Your Grafana dashboard fails to load, shows errors, or displays incomplete data. Panels show "No data" or loading spinners indefinitely.
The Error You'll See
```bash # Grafana UI shows: Datasource connection failed Query execution failed Timeout exceeded
# Or: Panel plugin not found ```
Why This Happens
- 1.Datasource down - Prometheus, InfluxDB unreachable
- 2.Query timeout - Query takes too long
- 3.Plugin missing - Required plugin not installed
- 4.Memory issues - Grafana OOM
- 5.Browser cache - Stale cached data
Step 1: Check Datasource
```bash # Test datasource connection: # In Grafana UI: Configuration > Data sources > Test
# Via API: curl -XGET http://admin:admin@localhost:3000/api/datasources/proxy/1/api/v1/query?query=up
# Check datasource health: curl -XGET http://localhost:3000/api/datasources/1/health ```
Step 2: Check Grafana Logs
```bash # View logs: docker logs grafana journalctl -u grafana-server -f
# Check for errors: grep -i error /var/log/grafana/grafana.log ```
Step 3: Restart Grafana
```bash # Docker: docker restart grafana
# Systemd: sudo systemctl restart grafana-server
# Kubernetes: kubectl rollout restart deployment/grafana ```
Step 4: Fix Query Issues
```bash # Increase query timeout: # In grafana.ini: [dataproxy] timeout = 60
# Or per datasource: # In datasource config, increase timeout
# Simplify queries: # Reduce time range # Use recording rules ```
Grafana Dashboard Loading Checklist
| Check | Command | Expected |
|---|---|---|
| Datasource up | test connection | Connected |
| No errors in logs | grep error | Empty |
| Query works | test query | Data returned |
| Plugins loaded | plugins list | All present |
Verify the Fix
```bash # Open dashboard: # Navigate to dashboard in browser
# Check panels: # All panels show data
# Verify no errors: # Check Grafana logs ```
Related Issues
- [Fix Prometheus Target Down](/articles/fix-prometheus-target-down)
- [Fix Grafana Datasource Connection](/articles/fix-grafana-datasource-connection)