Skip to content

Dashboard Repository

Available Dashboards

Alloy Metrics Dashboard

Purpose: Monitor Grafana Alloy log collection agent

Created: 2026-01-02

Documentation: reports/Alloy-Metrics-Dashboard-Creation-2026-01-02.md

Features: - 2 dashboard variables (datasource, hostname) - 4 row headers - 16 data panels (stats, gauges, timeseries) - Complex Flux queries including multi-metric calculations - Proper thresholds and visualization settings

Fail2ban Dashboard

Purpose: Monitor fail2ban security bans

Fixed: 2026-01-03 (blank graph troubleshooting)

Features: - Pie chart showing bans by jail - Table showing top banned IPs - Time series of ban activity - Supports journald-based logs (post-migration)

Docker Metrics Dashboard

Purpose: Monitor Docker/Podman container metrics

Created: 2026-01-03

Documentation: reports/Docker-Dashboard-Creation-2026-01-03.md

Reference

Grafana API Documentation: https://grafana.com/docs/grafana/latest/developers/http_api/

Dashboard JSON Schema: https://grafana.com/docs/grafana/latest/dashboards/build-dashboards/view-dashboard-json-model/

Creating New Dashboards

See "Dashboard Creation Workflow" page for complete guide to building dashboards programmatically.

Key steps: 1. Plan dashboard structure 2. Build JSON programmatically in Python 3. Deploy via Grafana API 4. Verify in browser 5. Commit creation script to git

Dashboard Templates

Complete working examples in /tmp/: - /tmp/create-alloy-dashboard.py - Full Alloy metrics dashboard - /tmp/fix-fail2ban-pie.py - Fix pie chart configuration - /tmp/fix-fail2ban-table.py - Fix table transformations - /tmp/grafana-blank-graph-troubleshoot.py - Diagnosis tool

Best Practices

  1. Version control dashboard creation scripts
  2. Test queries before adding to dashboards
  3. Use variables for filtering (datasource, hostname)
  4. Set meaningful thresholds based on operational baselines
  5. Document dashboard purpose and features
  6. Keep creation scripts in git for repeatability