diff --git a/monitoring/grafana/dashboards/weather-archive.json b/monitoring/grafana/dashboards/weather-archive.json new file mode 100644 index 0000000..7bf5479 --- /dev/null +++ b/monitoring/grafana/dashboards/weather-archive.json @@ -0,0 +1,80 @@ +{ + "uid": "ha-weather-archive", + "title": "Wetterarchiv KalliHome", + "tags": ["weather", "ecowitt", "homeassistant"], + "timezone": "browser", + "schemaVersion": 39, + "version": 1, + "refresh": "5m", + "time": { "from": "now-7d", "to": "now" }, + "templating": { "list": [] }, + "annotations": { "list": [] }, + "panels": [ + { + "id": 1, + "title": "Temperatur (°C)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 0, "y": 0 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "celsius", "custom": { "drawStyle": "line", "fillOpacity": 8 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT time, value, entity_id FROM \"°C\" WHERE entity_id IN ('sensor.gw3000a_outdoor_temperature','sensor.gw3000a_feels_like_temperature','sensor.gw3000a_dewpoint') AND $__timeFilter(time) ORDER BY time" } + ] + }, + { + "id": 2, + "title": "Luftfeuchte (%)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 12, "y": 0 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "percent", "custom": { "drawStyle": "line", "fillOpacity": 8 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT time, value, entity_id FROM \"%\" WHERE entity_id IN ('sensor.gw3000a_humidity','sensor.gw3000a_indoor_humidity') AND $__timeFilter(time) ORDER BY time" } + ] + }, + { + "id": 3, + "title": "Wind (km/h)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 0, "y": 9 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "velocitykmh", "custom": { "drawStyle": "line", "fillOpacity": 8 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT time, value, entity_id FROM \"km/h\" WHERE entity_id IN ('sensor.gw3000a_wind_speed','sensor.gw3000a_wind_gust') AND $__timeFilter(time) ORDER BY time" } + ] + }, + { + "id": 4, + "title": "Solarstrahlung (W/m²)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 12, "y": 9 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "wattm2", "custom": { "drawStyle": "line", "fillOpacity": 20 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT time, value, entity_id FROM \"W/m²\" WHERE entity_id = 'sensor.gw3000a_solar_radiation' AND $__timeFilter(time) ORDER BY time" } + ] + }, + { + "id": 5, + "title": "Regen pro Tag (mm)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 0, "y": 18 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "lengthmm", "custom": { "drawStyle": "bars", "fillOpacity": 60 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT date_bin(INTERVAL '1 day', time) AS time, max(value) AS value FROM \"mm\" WHERE entity_id = 'sensor.gw3000a_daily_rain' AND $__timeFilter(time) GROUP BY 1 ORDER BY 1" } + ] + }, + { + "id": 6, + "title": "Luftdruck (hPa)", + "type": "timeseries", + "gridPos": { "h": 9, "w": 12, "x": 12, "y": 18 }, + "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, + "fieldConfig": { "defaults": { "unit": "pressurehpa", "custom": { "drawStyle": "line", "fillOpacity": 8 } }, "overrides": [] }, + "targets": [ + { "refId": "A", "datasource": { "type": "influxdb", "uid": "ha-weather-influx" }, "rawQuery": true, "format": "time_series", "rawSql": "SELECT time, value FROM \"hPa\" WHERE entity_id = 'sensor.gw3000a_relative_pressure' AND $__timeFilter(time) ORDER BY time" } + ] + } + ] +}