Home Assistant

Langzeit-Logging in HA: InfluxDB & Grafana

Home Assistant speichert Sensorwerte standardmässig in einer SQLite-Datenbank, die nach zehn Tagen aufgeräumt wird. Wer aber wissen will, wie viele Verdichter-Starts die Wärmepumpe in den letzten drei Jahren gesammelt hat oder ob das Stromverbrauchsmuster am Sonntag dieses Jahr wirklich anders ist als 2024, stösst an die Grenzen der eingebauten Recorder. Die saubere Lösung heisst InfluxDB als Zeitreihen-Datenbank plus Grafana als Visualisierungs-Frontend – beides läuft hervorragend als Add-on auf dem gleichen Home Assistant Operating System.

Warum nicht einfach den Long-Term Statistics-Recorder?

Seit Version 2022.4 verfügt Home Assistant über die «Long-Term Statistics», die für jeden numerischen Sensor stündliche Min-, Max- und Mean-Werte unbegrenzt speichern. Das genügt für viele Auswertungen, hat aber Schwächen: Die Granularität ist auf eine Stunde fixiert, eigene Aggregationen sind kaum möglich, und Dashboards lassen sich nur innerhalb der HA-Welt bauen. Sobald mehrere Datenquellen kombiniert oder Berichte für Wochen-, Monats- oder Jahresvergleiche erstellt werden sollen, lohnt sich der Schritt zu InfluxDB.

InfluxDB 2.x speichert die Rohwerte mit Sekunden-Genauigkeit (oder einer beliebig wählbaren Auflösung), unterstützt Retention Policies für unterschiedliche Lebensdauern und liefert mit Flux eine mächtige Abfragesprache. Grafana darüber gestülpt liefert die Diagramme, die jede Excel-Kalkulation alt aussehen lassen.

Add-on installieren und einrichten

Beide Komponenten gibt es als offizielle Community-Add-ons im Add-on Store. Nach der Installation startet InfluxDB unter Port 8086, das Initial-Setup (Organisation, Bucket, Admin-Token) erfolgt im UI über die Sidebar. Der wichtigste Schritt: Einen separaten API-Token mit Read-/Write-Rechten für den Bucket homeassistant generieren und sicher ablegen – diesen Token braucht HA für den Schreibvorgang.

In configuration.yaml wird die Integration eingetragen:


influxdb:
  api_version: 2
  host: a0d7b954-influxdb
  port: 8086
  token: !secret influx_token
  organization: home
  bucket: homeassistant
  precision: s
  max_retries: 3
  default_measurement: state
  include:
    domains:
      - sensor
      - binary_sensor
      - climate
    entity_globs:
      - sensor.cta_*
      - sensor.pv_*
  exclude:
    entity_globs:
      - sensor.*_battery_level

Wichtig ist das Filtern: InfluxDB-Lizenzen und Speicher sind günstig, aber jede unsinnig geschriebene Entität verlangsamt spätere Abfragen. Sensoren wie Batteriestände oder Konnektivitäts-Status sind selten interessant und sollten ausgeschlossen werden. Nach einem HA-Neustart füllt sich der Bucket innerhalb von Minuten.

Retention Policies sauber definieren

InfluxDB schreibt standardmässig unbegrenzt, was bei 1000 Sensoren à 30 Werten pro Stunde rasch in den dreistelligen Gigabyte-Bereich führt. Drei abgestufte Retention Buckets sind das bewährte Setup:


# über InfluxDB-UI oder CLI
bucket: ha_raw       -> retention: 14d  (sekundengenau)
bucket: ha_5m        -> retention: 90d  (5-Minuten-Aggregat)
bucket: ha_1h        -> retention: 5y   (Stundenaggregat)

Die Down-Sampling-Tasks werden in der Flux-UI als geplante Jobs hinterlegt. Damit bleibt der schnelle Zugriff auf die letzten zwei Wochen sekundengenau, mittlere Zeiträume reagieren immer noch schnell, und Mehrjahres-Auswertungen laufen auf den verdichteten Stundenwerten.

Grafana als Dashboard-Frontend

Auch Grafana wird als Add-on installiert. Nach dem ersten Login richtet man InfluxDB als Datenquelle ein (URL http://a0d7b954-influxdb:8086, gleicher Token wie zuvor). Anschliessend lassen sich Dashboards mit beliebig vielen Panels bauen. Eine typische Flux-Abfrage für die wöchentlichen Verdichter-Starts der Wärmepumpe sieht so aus:


from(bucket: "ha_1h")
  |> range(start: -90d)
  |> filter(fn: (r) => r._measurement == "state")
  |> filter(fn: (r) => r.entity_id == "cta_verdichter_start_zahler")
  |> aggregateWindow(every: 7d, fn: max)
  |> derivative(unit: 7d, nonNegative: true)
  |> yield(name: "starts_per_week")

Das Diagramm zeigt nicht nur die absolute Zahl, sondern auch sofort, wann das Taktverhalten sich gegenüber dem Vorjahr verändert hat – etwa nach einem Reglereingriff oder Wettereinbruch. Ähnliche Abfragen lassen sich für PV-Erträge, Stromverbrauch nach Tarif oder Heizkurven-Hold konstruieren.

Backups und Aufbewahrung

Ein häufig vergessenes Detail: InfluxDB-Daten landen nicht im normalen HA-Snapshot. Im Add-on lässt sich aber ein nächtlicher Export auf das /share– oder /backup-Verzeichnis einrichten. Wer Synology oder Truenas im Netz hat, schiebt die Dumps via rsync weiter – damit überstehen die Jahres-Statistiken auch einen kompletten SD-Karten-Ausfall des Raspberry Pi.

Welche Auswertungen sich wirklich lohnen

Erfahrungsgemäss zahlen sich drei Dashboards besonders schnell aus. Das Energie-Dashboard kombiniert PV-Ertrag, Bezug, Einspeisung und Tarifzeiten in einem einzigen Bild – damit lässt sich der Eigenverbrauchsanteil über Monate kontinuierlich optimieren. Das Wärmepumpen-Cockpit zeigt Verdichter-Starts, Vorlauftemperatur, JAZ und Soletemperaturen im Verlauf der Heizsaison – ideal, um Servicetermine mit Daten zu unterfüttern. Und das Klima- und Komfort-Dashboard verbindet Innen- und Aussentemperatur mit Luftfeuchte und Entfeuchter-Laufzeiten – relevant für jeden, der mit Schimmel und Trockenheit kämpft.

Wer bisher mit dem normalen Recorder gearbeitet hat und Diagramme für mehrere Jahre erstellen will, profitiert noch zusätzlich vom Vergleich mit den neuen Trigger-Funktionen aus HA 2026.5, um Anomalien direkt im InfluxDB-Datenstrom als Automationsauslöser nutzbar zu machen.

Fazit

InfluxDB und Grafana sind in einer Stunde aufgesetzt und liefern danach jahrelang verlässliche Auswertungen. Der einmalige Aufwand für sauberes Filtern und Retention-Tuning zahlt sich vielfach aus, sobald die ersten Vergleichswerte aus dem Vorjahr zur Verfügung stehen. Wer Home Assistant ernsthaft betreibt und Entscheidungen über Heizung, PV oder Klima auf Daten stützen will, kommt an diesem Duo nicht vorbei. Einmal eingerichtet, ist es ein stilles, robustes Fundament hinter dem täglichen HA-Betrieb – und der beste Beweis dafür, dass Smart Home nicht aus blinkenden Lichtern besteht, sondern aus belastbaren Messwerten.

← Zurück zur Übersicht