Add Grafana summary and detail dashboards

This commit is contained in:
2026-03-14 00:00:20 +01:00
parent 3de376a2e1
commit b52ad9caee
4 changed files with 3876 additions and 0 deletions
+27
View File
@@ -108,6 +108,33 @@ docker-compose up --build -d
It expects a local `config.json` next to the compose file and exposes port `8080` for health and metrics.
## Grafana
A simple starter dashboard for the current Tasmota schema is included at `docs/grafana/tasmota-simple-dashboard.json`.
Assumptions:
- Grafana uses the built-in `InfluxDB` datasource plugin
- the datasource is configured for InfluxDB v3 with query language set to `SQL`
- the datasource points at the same database name configured in `MQTT_SCRUBBER_INFLUX_DATABASE`
Import the dashboard JSON and bind the `DS_INFLUXDB` input to your InfluxDB datasource.
The dashboard includes a `Device` variable for the selected-device section and a `Relay Device` variable that only lists devices publishing relay fields.
Use `Device` for the health row, time series, and recent-state table. Use `Relay Device` for the relay status row so non-relay devices do not clutter that picker.
The dashboard currently visualizes fields that are known to be emitted by the parser today and that exist with the default topic subscription set:
- `tasmota_sensor`: `energy_power`, `energy_voltage`, `energy_total`, `analog_temperature`, `analog_a0`
- `tasmota_state`: `wifi_signal`, `uptime_sec`
If you also want LWT availability panels, add `tele/+/LWT` to the configured MQTT topics so the `tasmota_lwt` measurement is created.
Relay panels use the latest `power`, `power1`, `power2`, `power3`, and `power4` values from `tasmota_state`. Devices that do not publish a given relay field will show no value for that panel.
The dashboard is split into a fleet summary section and a selected-device section. The selected-device section also includes `Last Seen`, `Seconds Since Last Message`, and `Messages In Range` panels derived from both `tasmota_state` and `tasmota_sensor` timestamps.
## Notes
- The repo name is kept as `mqqt-scrubber` to match the existing folder.