Datenimport
Hast du mindestens die Advanced-Edition unseres Loxone Datenloggers erworben, kannst du die auf dem Loxone Miniserver gespeicherten Statistiken in die Visualisierung bzw. die Datenbank importieren.
Hierbei hast du über die folgenden Parameter die Möglichkeit, den Import zu steuern:
| PARAMETER | ERFORDERLICH | BESCHREIBUNG |
| -y | Ja | Legt fest aus welchem Jahr die Daten vom Loxone Miniserver importiert werden sollen. |
| -m | Nein | Legt einen speziellen Monat im Jahr fest für den die Daten vom Loxone Miniserver importiert werden sollen. |
| –dry-run | Nein | Zeigt die geplanten Schreibvorgänge nur an, ohne tatsächlich in die Datenbank zu schreiben – ideal zum Prüfen vor dem eigentlichen Import. |
Um das Importieren der Daten zu starten, führe den folgenden Befehl aus:
lxlogger import -y 2020Der LxLogger wird nun alle Daten (insofern vorhanden) aus dem Jahr 2020, in die Datenbank speichern. Je nach Anzahl der aufgezeichneten Daten und deren Intervall kann dies mehrere Minuten in Anspruch nehmen.
Willst du zum Beispiel nur die Daten vom Oktober 2020 importieren, nutze folgenden Befehl:
lxlogger import -y 2020 -m 10Während des Imports zeigt ein Fortschrittsbalken den Verlauf an; zum Abschluss erhältst du eine Zusammenfassung (geschriebene Datenpunkte, Fehler und Dauer).
Der Import schreibt die Werte Monat für Monat in die Datenbank. Scheitert dabei ein Schreibvorgang, bricht er ab und nennt den betroffenen Monat. Starte den Import danach einfach erneut. Er holt die fehlenden Werte nach, bereits geschriebene Punkte werden dabei mit denselben Werten überschrieben.
Vorab prüfen (Probelauf)
Abschnitt betitelt „Vorab prüfen (Probelauf)“Mit --dry-run kannst du vorab sehen, was importiert würde, ohne tatsächlich in
die Datenbank zu schreiben:
lxlogger import -y 2020 -m 4 --dry-runZeitzone
Abschnitt betitelt „Zeitzone“Der Miniserver speichert seine Statistiken in Ortszeit, ohne Angabe der Zeitzone.
lxlogger import liest sie in der Zeitzone aus [miniserver] timezone bzw. der
Umgebungsvariable LXL_MINISERVER_TIMEZONE. Ohne Angabe gilt die Zeitzone des
Systems, auf dem der LxLogger läuft. Weicht diese von der Zeitzone des Miniservers
ab, würden alle Werte verschoben in der Datenbank landen: im Winter um eine, im
Sommer um zwei Stunden.
Setze deshalb die Zeitzone deines Miniservers in der Konfigurationsdatei:
[miniserver]timezone = "Europe/Berlin"Erlaubt sind IANA-Namen wie Europe/Berlin, Europe/Vienna oder Europe/Zurich.
- Docker: Das Image setzt ab v1.2.1
LXL_MINISERVER_TIMEZONE=Europe/Berlin. Das passt für Deutschland, Österreich und die Schweiz. Für eine andere Zone startest du den Container mit-e LXL_MINISERVER_TIMEZONE=<Zone>, z. B.-e LXL_MINISERVER_TIMEZONE=Europe/London. Die Umgebungsvariable hat Vorrang vortimezonein der Konfiguration. Siehe Docker → Zeitzone. - Linux (deb/rpm): Ohne
timezonegilt die Zeitzone des Servers. Steht er auf UTC, setzetimezonein/etc/lxlogger/lxlogger.toml. Siehe Linux → Zeitzone prüfen. - Windows: Ohne
timezonegilt die Zeitzone des Systems. Stimmt sie nicht mit der des Miniservers überein, setzetimezonein der Konfiguration.
Prüfung vor dem Import
Abschnitt betitelt „Prüfung vor dem Import“Bevor der Import den ersten Wert schreibt, fragt er den aktuellen UTC-Versatz des
Miniservers ab. Diesen vergleicht er mit dem Versatz der eingestellten Zeitzone.
Weichen beide ab, bricht der Import mit Code 1 ab und schreibt nichts in die
Datenbank. Das gilt auch für einen Probelauf mit --dry-run. Die Meldung nennt
beide Versätze, z. B.:
The Miniserver's UTC offset (+02:00) differs from that of the host time zone (+00:00). Refusing to import, every value would be shifted.Set the Miniserver's time zone via `[miniserver] timezone` (or LXL_MINISERVER_TIMEZONE), e.g. "Europe/Berlin".Setze dann timezone auf die Zeitzone deines Miniservers und starte den Import
erneut. Mit --dry-run prüfst du vorab, ob die Zeitzone passt.
Kann der LxLogger den Versatz nicht abfragen, schreibt er eine Warnung ins Log und importiert trotzdem.
Bereits importierte Werte korrigieren
Abschnitt betitelt „Bereits importierte Werte korrigieren“Ein Import löscht keine Daten. Er überschreibt nur Punkte mit identischem Measurement, Tags und Zeitstempel. Ob ein erneuter Import verschobene Werte korrigiert, hängt deshalb vom Intervall der Statistik ab:
- Festes Intervall (z. B. alle 5 Minuten oder stündlich): Importiere den gesamten betroffenen Zeitraum lückenlos neu. Die verschobenen Punkte liegen auf dem Raster der Statistik und werden mit den richtigen Werten überschrieben. Nur hinter dem letzten echten Wert bleiben bis zu zwei Stunden falscher Punkte stehen.
- Bei jeder Änderung: Hier hilft ein erneuter Import nicht. Die Zeitstempel sind unregelmäßig, alter und neuer Punkt stehen danach nebeneinander. Lösche den Zeitraum vorher in der InfluxDB und importiere ihn dann neu.
Für ein sauberes Ergebnis löschst du den betroffenen Zeitraum zuerst. Lege das Ende zwei Stunden hinter den Zeitraum, damit auch die verschobenen Punkte am Rand erfasst werden. Beispiel für das Jahr 2025:
influx delete --bucket <bucket> \ --start 2025-01-01T00:00:00Z \ --stop 2026-01-01T02:00:00ZUSE <datenbank>DELETE WHERE time >= '2025-01-01T00:00:00Z' AND time < '2026-01-01T02:00:00Z'Importiere danach den Zeitraum neu:
lxlogger import -y 2025