{"id":302,"date":"2026-05-17T19:55:19","date_gmt":"2026-05-17T17:55:19","guid":{"rendered":"https:\/\/www.coremind.ch\/wordpress\/?p=302"},"modified":"2026-05-17T20:24:54","modified_gmt":"2026-05-17T18:24:54","slug":"langzeit-logging-in-ha-influxdb-grafana","status":"publish","type":"post","link":"https:\/\/www.coremind.ch\/wordpress\/langzeit-logging-in-ha-influxdb-grafana\/","title":{"rendered":"Langzeit-Logging in HA: InfluxDB &#038; Grafana"},"content":{"rendered":"<p>Home Assistant speichert Sensorwerte standardm\u00e4ssig in einer SQLite-Datenbank, die nach zehn Tagen aufger\u00e4umt wird. Wer aber wissen will, wie viele Verdichter-Starts die W\u00e4rmepumpe in den letzten drei Jahren gesammelt hat oder ob das Stromverbrauchsmuster am Sonntag dieses Jahr wirklich anders ist als 2024, st\u00f6sst an die Grenzen der eingebauten Recorder. Die saubere L\u00f6sung heisst InfluxDB als Zeitreihen-Datenbank plus Grafana als Visualisierungs-Frontend \u2013 beides l\u00e4uft hervorragend als Add-on auf dem gleichen Home Assistant Operating System.<\/p>\n<h2>Warum nicht einfach den Long-Term Statistics-Recorder?<\/h2>\n<p>Seit Version 2022.4 verf\u00fcgt Home Assistant \u00fcber die \u00abLong-Term Statistics\u00bb, die f\u00fcr jeden numerischen Sensor st\u00fcndliche Min-, Max- und Mean-Werte unbegrenzt speichern. Das gen\u00fcgt f\u00fcr viele Auswertungen, hat aber Schw\u00e4chen: Die Granularit\u00e4t ist auf eine Stunde fixiert, eigene Aggregationen sind kaum m\u00f6glich, und Dashboards lassen sich nur innerhalb der HA-Welt bauen. Sobald mehrere Datenquellen kombiniert oder Berichte f\u00fcr Wochen-, Monats- oder Jahresvergleiche erstellt werden sollen, lohnt sich der Schritt zu InfluxDB.<\/p>\n<p>InfluxDB 2.x speichert die Rohwerte mit Sekunden-Genauigkeit (oder einer beliebig w\u00e4hlbaren Aufl\u00f6sung), unterst\u00fctzt Retention Policies f\u00fcr unterschiedliche Lebensdauern und liefert mit Flux eine m\u00e4chtige Abfragesprache. Grafana dar\u00fcber gest\u00fclpt liefert die Diagramme, die jede Excel-Kalkulation alt aussehen lassen.<\/p>\n<h2>Add-on installieren und einrichten<\/h2>\n<p>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 \u00fcber die Sidebar. Der wichtigste Schritt: Einen separaten API-Token mit Read-\/Write-Rechten f\u00fcr den Bucket <code>homeassistant<\/code> generieren und sicher ablegen \u2013 diesen Token braucht HA f\u00fcr den Schreibvorgang.<\/p>\n<p>In <code>configuration.yaml<\/code> wird die Integration eingetragen:<\/p>\n<pre><code>\ninfluxdb:\n  api_version: 2\n  host: a0d7b954-influxdb\n  port: 8086\n  token: !secret influx_token\n  organization: home\n  bucket: homeassistant\n  precision: s\n  max_retries: 3\n  default_measurement: state\n  include:\n    domains:\n      - sensor\n      - binary_sensor\n      - climate\n    entity_globs:\n      - sensor.cta_*\n      - sensor.pv_*\n  exclude:\n    entity_globs:\n      - sensor.*_battery_level\n<\/code><\/pre>\n<p>Wichtig ist das Filtern: InfluxDB-Lizenzen und Speicher sind g\u00fcnstig, aber jede unsinnig geschriebene Entit\u00e4t verlangsamt sp\u00e4tere Abfragen. Sensoren wie Batteriest\u00e4nde oder Konnektivit\u00e4ts-Status sind selten interessant und sollten ausgeschlossen werden. Nach einem HA-Neustart f\u00fcllt sich der Bucket innerhalb von Minuten.<\/p>\n<h2>Retention Policies sauber definieren<\/h2>\n<p>InfluxDB schreibt standardm\u00e4ssig unbegrenzt, was bei 1000 Sensoren \u00e0 30 Werten pro Stunde rasch in den dreistelligen Gigabyte-Bereich f\u00fchrt. Drei abgestufte Retention Buckets sind das bew\u00e4hrte Setup:<\/p>\n<pre><code>\n# \u00fcber InfluxDB-UI oder CLI\nbucket: ha_raw       -> retention: 14d  (sekundengenau)\nbucket: ha_5m        -> retention: 90d  (5-Minuten-Aggregat)\nbucket: ha_1h        -> retention: 5y   (Stundenaggregat)\n<\/code><\/pre>\n<p>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\u00e4ume reagieren immer noch schnell, und Mehrjahres-Auswertungen laufen auf den verdichteten Stundenwerten.<\/p>\n<h2>Grafana als Dashboard-Frontend<\/h2>\n<p>Auch Grafana wird als Add-on installiert. Nach dem ersten Login richtet man InfluxDB als Datenquelle ein (URL <code>http:\/\/a0d7b954-influxdb:8086<\/code>, gleicher Token wie zuvor). Anschliessend lassen sich Dashboards mit beliebig vielen Panels bauen. Eine typische Flux-Abfrage f\u00fcr die w\u00f6chentlichen Verdichter-Starts der W\u00e4rmepumpe sieht so aus:<\/p>\n<pre><code>\nfrom(bucket: \"ha_1h\")\n  |> range(start: -90d)\n  |> filter(fn: (r) => r._measurement == \"state\")\n  |> filter(fn: (r) => r.entity_id == \"cta_verdichter_start_zahler\")\n  |> aggregateWindow(every: 7d, fn: max)\n  |> derivative(unit: 7d, nonNegative: true)\n  |> yield(name: \"starts_per_week\")\n<\/code><\/pre>\n<p>Das Diagramm zeigt nicht nur die absolute Zahl, sondern auch sofort, wann das Taktverhalten sich gegen\u00fcber dem Vorjahr ver\u00e4ndert hat \u2013 etwa nach einem Reglereingriff oder Wettereinbruch. \u00c4hnliche Abfragen lassen sich f\u00fcr PV-Ertr\u00e4ge, Stromverbrauch nach Tarif oder Heizkurven-Hold konstruieren.<\/p>\n<h2>Backups und Aufbewahrung<\/h2>\n<p>Ein h\u00e4ufig vergessenes Detail: InfluxDB-Daten landen nicht im normalen HA-Snapshot. Im Add-on l\u00e4sst sich aber ein n\u00e4chtlicher Export auf das <code>\/share<\/code>&#8211; oder <code>\/backup<\/code>-Verzeichnis einrichten. Wer Synology oder Truenas im Netz hat, schiebt die Dumps via rsync weiter \u2013 damit \u00fcberstehen die Jahres-Statistiken auch einen kompletten SD-Karten-Ausfall des Raspberry Pi.<\/p>\n<h2>Welche Auswertungen sich wirklich lohnen<\/h2>\n<p>Erfahrungsgem\u00e4ss zahlen sich drei Dashboards besonders schnell aus. Das <strong>Energie-Dashboard<\/strong> kombiniert PV-Ertrag, Bezug, Einspeisung und Tarifzeiten in einem einzigen Bild \u2013 damit l\u00e4sst sich der Eigenverbrauchsanteil \u00fcber Monate kontinuierlich optimieren. Das <strong>W\u00e4rmepumpen-Cockpit<\/strong> zeigt Verdichter-Starts, Vorlauftemperatur, JAZ und Soletemperaturen im Verlauf der Heizsaison \u2013 ideal, um Servicetermine mit Daten zu unterf\u00fcttern. Und das <strong>Klima- und Komfort-Dashboard<\/strong> verbindet Innen- und Aussentemperatur mit Luftfeuchte und Entfeuchter-Laufzeiten \u2013 relevant f\u00fcr jeden, der mit Schimmel und Trockenheit k\u00e4mpft.<\/p>\n<p>Wer bisher mit dem normalen Recorder gearbeitet hat und Diagramme f\u00fcr mehrere Jahre erstellen will, profitiert noch zus\u00e4tzlich vom Vergleich mit den <a href=\"https:\/\/www.coremind.ch\/wordpress\/?p=cop-monitoring\">neuen Trigger-Funktionen aus HA 2026.5<\/a>, um Anomalien direkt im InfluxDB-Datenstrom als Automationsausl\u00f6ser nutzbar zu machen.<\/p>\n<h2>Fazit<\/h2>\n<p>InfluxDB und Grafana sind in einer Stunde aufgesetzt und liefern danach jahrelang verl\u00e4ssliche Auswertungen. Der einmalige Aufwand f\u00fcr sauberes Filtern und Retention-Tuning zahlt sich vielfach aus, sobald die ersten Vergleichswerte aus dem Vorjahr zur Verf\u00fcgung stehen. Wer Home Assistant ernsthaft betreibt und Entscheidungen \u00fcber Heizung, PV oder Klima auf Daten st\u00fctzen will, kommt an diesem Duo nicht vorbei. Einmal eingerichtet, ist es ein stilles, robustes Fundament hinter dem t\u00e4glichen HA-Betrieb \u2013 und der beste Beweis daf\u00fcr, dass Smart Home nicht aus blinkenden Lichtern besteht, sondern aus belastbaren Messwerten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Home Assistant speichert Sensorwerte standardm\u00e4ssig in einer SQLite-Datenbank, die nach zehn Tagen aufger\u00e4umt wird. Wer aber wissen will, wie viele Verdichter-Starts die W\u00e4rmepumpe in den letzten drei Jahren gesammelt hat oder ob das Stromverbrauchsmuster am Sonntag dieses Jahr wirklich anders ist als 2024, st\u00f6sst an die Grenzen der eingebauten Recorder. Die saubere L\u00f6sung heisst InfluxDB &#8230; <a title=\"Langzeit-Logging in HA: InfluxDB &#038; Grafana\" class=\"read-more\" href=\"https:\/\/www.coremind.ch\/wordpress\/langzeit-logging-in-ha-influxdb-grafana\/\" aria-label=\"Mehr Informationen \u00fcber Langzeit-Logging in HA: InfluxDB &#038; Grafana\">Weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-302","post","type-post","status-publish","format-standard","hentry","category-ha"],"_links":{"self":[{"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/posts\/302","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/comments?post=302"}],"version-history":[{"count":1,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/posts\/302\/revisions"}],"predecessor-version":[{"id":313,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/posts\/302\/revisions\/313"}],"wp:attachment":[{"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/media?parent=302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/categories?post=302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.coremind.ch\/wordpress\/wp-json\/wp\/v2\/tags?post=302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}