Submitted by Erik Wegner
on
Body
Bezeichner ermitteln
Zuerst müssen einige Bezeichner ermittelt werden. Dazu wird zuerst der influx-Client gestartet:
docker exec -it <influx-container-name-or-id> influx Connected to http://localhost:8086 version 1.7.9 InfluxDB shell version: 1.7.9 > show databases name: databases name ---- _internal smarthome > use smarthome Using database smarthome > show series key --- downsampled downsampled_pressure downsampled_temperature pressure temp
Defekte Daten abfragen und löschen
Die Antwort auf StackOverflow hilft dabei, die defekten Daten abzufragen und zu löschen. Dieses Vorgehen ist notwendig, weil Influx keine Bedingungen beim Löschen von Datenpunkten unterstützt #3210, abgesehen vom Zeitstempel des Eintrags.
Für andere Anwendungen muss die Bezeichnung der Datenbank (smarthome
) und der Serie (pressure
) angepasst werden.
curl -G 'http://localhost:8086/query?db=smarthome' \ --data-urlencode "q=SELECT * FROM pressure WHERE value>1140" |\ jq -r "(.results[0].series[0].values[][0])" > delete_timestamps.txt for i in $(cat delete_timestamps.txt); do echo $i; curl -G 'http://localhost:8086/query?db=smarthome' \ --data-urlencode "q=DELETE FROM pressure WHERE time='$i'"; done
Comments
InfluxDB
Perfekte Anleitung.
Was ich schon alles durchsucht habe um die Datenbank in Docker anzusprechen.
Mit deiner Anleitung hat das perfekt funktioniert.
Jetzt stellt sich noch die Frage ob es auch einfach ist auf diesem Weg z. B. eine Datenbank wie in deinem Beispiel die "smathome" von der SD Karte auf eine Festplatte zu sichern.
Danke für die einfache und verständliche Anleitung - auch für Anfänger wie mich perfekt