Grafana Dashboards¶
Connect HolmesGPT to Grafana for dashboard analysis, visual rendering, query extraction, and understanding your monitoring setup. When the Grafana Image Renderer is installed, HolmesGPT can visually render dashboards and panels to detect anomalies like spikes, trends, and outliers.
Prerequisites¶
A Grafana service account token with the following permissions:
- Basic role → Viewer
For visual rendering, the Grafana Image Renderer plugin must be installed on your Grafana instance and enable_rendering: true must be set in the config. HolmesGPT auto-detects the renderer — if it's not installed, visual rendering tools are simply not registered and everything else works normally.
Configuration¶
Add the following to ~/.holmes/config.yaml. Create the file if it doesn't exist:
toolsets:
grafana/dashboards:
enabled: true
config:
api_key: <your grafana service account token>
api_url: <your grafana url> # e.g. https://acme-corp.grafana.net or http://localhost:3000
# Optional: Additional headers for all requests
# additional_headers:
# X-Custom-Header: "custom-value"
After making changes to your configuration, run:
To test, run:
Visual Rendering¶
When the Grafana Image Renderer is available, HolmesGPT can take screenshots of dashboards and panels and analyze them using the LLM's vision capabilities. This is useful for:
- Spotting anomalous spikes or patterns across many panels at once
- Analyzing visual dashboard layouts without parsing raw query data
- Investigating dashboards that use complex visualizations (heatmaps, gauges, etc.)
The LLM controls all rendering parameters — time range, dimensions, theme, timezone, and template variables — so it can zoom in on specific time windows or adjust the view as needed during investigation.
Rendering is disabled by default. To enable it, add enable_rendering: true to your config:
When rendering a full dashboard, HolmesGPT captures the entire page (all rows) so that panels at the bottom are not cropped.
Advanced Configuration¶
SSL Verification¶
For self-signed certificates, you can disable SSL verification:
External URL¶
If HolmesGPT accesses Grafana through an internal URL but you want clickable links in results to use a different URL:
Common Use Cases¶
holmes ask "Get the CPU usage queries from the Kubernetes cluster dashboard and check if any nodes are throttling"