Vraag


Acties:
  • 0 Henk 'm!

  • Redbaard
  • Registratie: Juli 2006
  • Laatst online: 06-07 11:54
Mijn vraag
Kan ik in de influxdb data corrigeren? Vorige week in de nacht geeft mijn grafana grafiek aan dat ik ongeveer 4900 Cubic metre gas heb gebruik, binnen een minuut :P. Ik lees de slimme meter uit met een raspberry pi met ser2net en stuur dit naar mijn server met HA en Influxdb. Ik heb alleen moeite om vast te stellen hoe dit nu precies opgeslagen wordt. Ik bereken namelijk de maandelijke kosten en meet het maandelijks verbruik. Beide geven nu grafieken waar ik niets mee kan. Kan ik een query invoerendie vanaf het moment dat het fout is gegaan van elke data entry 4900 kuub aftrek?

Relevante software en hardware die ik gebruik
Raspberry Pi met Ser2Net
InfluxDB
Grafana
HomeAssistant

Wat ik al gevonden of geprobeerd heb
Niets, want ben bang dat ik de data helemaal verpruts.

Alle reacties


Acties:
  • +1 Henk 'm!

  • jobr
  • Registratie: Januari 2009
  • Laatst online: 18-05 18:57
Redbaard schreef op maandag 16 september 2019 @ 14:03:
Mijn vraag
Kan ik in de influxdb data corrigeren? Vorige week in de nacht geeft mijn grafana grafiek aan dat ik ongeveer 4900 Cubic metre gas heb gebruik, binnen een minuut :P. Ik lees de slimme meter uit met een raspberry pi met ser2net en stuur dit naar mijn server met HA en Influxdb. Ik heb alleen moeite om vast te stellen hoe dit nu precies opgeslagen wordt. Ik bereken namelijk de maandelijke kosten en meet het maandelijks verbruik. Beide geven nu grafieken waar ik niets mee kan. Kan ik een query invoerendie vanaf het moment dat het fout is gegaan van elke data entry 4900 kuub aftrek?

Relevante software en hardware die ik gebruik
Raspberry Pi met Ser2Net
InfluxDB
Grafana
HomeAssistant

Wat ik al gevonden of geprobeerd heb
Niets, want ben bang dat ik de data helemaal verpruts.
toon volledige bericht
Verwijderen van 1 datapoint kan volgens mij niet.
Maar je kunt de waarde wel overschrijven met een nieuwe waarde.
Of selectief alles, behalve die ene, kopieren naar een tijdelijke kopie. Origineel verwijderen en kopie terugzetten. Je moet dan wel goed weten wat je doet....

Overschrijven met een nieuwe waarde is het eenvoudigste. Gewoon een insert met exact dezelfde timestamp gebruiken maar met een andere waarde.
Waarde even afhankelijk van de opzet van je measurements/series. En wel dezelfde measurement/tag/Field(s) gebruiken.

Een voorbeeld in MIJN geval:

SELECT * FROM "domoticz"."autogen"."Counter" WHERE "name"='EnergieVerbruik' and time >= '2019-03-01T13:14:00.614Z' and time <= '2019-03-01T16:54:00.494Z'

name: Counter
time idx name value
---- --- ---- -----
1551446040614977648 178 EnergieVerbruik 171475
1551448200646674035 178 EnergieVerbruik 171475
1551448260737856585 178 EnergieVerbruik -453140.97
1551448320328384998 178 EnergieVerbruik -453133
1551448380412830850 178 EnergieVerbruik -453121
1551448440494290931 178 EnergieVerbruik -453109.97

En dan om te wijzigen:
insert Counter,name=EnergieVerbruik,idx=178 value=171475.0 1551448260737856585

Dit kun je dus doen bijv in de CLI van influxdb.

Hoe het eruit ziet kun je met Chronograf bekijken (maar dat wist je waarschijnlijk wel).

Acties:
  • 0 Henk 'm!

  • Redbaard
  • Registratie: Juli 2006
  • Laatst online: 06-07 11:54
Hmm toch iets lastiger dan ik dacht.

SELECT "value" FROM "m3" WHERE ("entity_id" = 'monthly_gas') AND $timeFilter

Dit is de query die ik run om de table te voorschijn te toveren. De timefilter, daar kom ik wel uit. maar wat moet ik dan runnen om alles vanaf een bepaalde timestamp -49144 kuub te doen?

Acties:
  • 0 Henk 'm!

  • biomass
  • Registratie: Augustus 2004
  • Laatst online: 23:26
Redbaard schreef op maandag 16 september 2019 @ 14:03:
Niets, want ben bang dat ik de data helemaal verpruts.
Idealiter tel je correctie data op bij je ruwe meetdata op. Ik ken InfluxDb nog niet, maar in die richting zou je kunnen zoeken.

Acties:
  • 0 Henk 'm!

  • klump4u
  • Registratie: Februari 2008
  • Niet online

klump4u

Gasloos in Zuid-Limburg

Je kunt beter de fouten verwijderen uit je influxdb

18950Wp🌞, Atlantic 270V3💧, Pana 5J🔥. Zendure 11,5🔋


Acties:
  • 0 Henk 'm!

  • Luc S
  • Registratie: April 2015
  • Laatst online: 22:21
Ik verwijder ook foutieve data als er wat mis is gegaan uit influx. Voor zover ik weet kan dat inderdaad enkel o.b.v. timestamps. Ik zoek de timestamps waartussen het verkeerd staat en run dan dergelijke query:

DELETE FROM {table} WHERE entity_id = '{field}' and time > {net vóór begin van foute data unix timestamp} and time < {net na eind foute data unix timestamp}

6930Wp Oost-West PV_Output | 7.5 kW Ecodan + 300L


Acties:
  • 0 Henk 'm!

  • Copitano
  • Registratie: Februari 2018
  • Laatst online: 20-07 19:08

Copitano

Hoorn NH

jobr schreef op maandag 16 september 2019 @ 19:29:
[...]
Maar je kunt de waarde wel overschrijven met een nieuwe waarde.

En dan om te wijzigen:
insert Counter,name=EnergieVerbruik,idx=178 value=171475.0 1551448260737856585
Perfect! Had dit even nodig en het werkt nog steeds :Y

Elga | Valliant eco TEC plus VHR 30-34/5-5L | Kamstrup 602 |Nodo OTGW | Raspberry Pi 3B+/4B+|RFXcom rfxtrx433xl | UniFi netwerk | PVoutput 8.625 kWp


Acties:
  • 0 Henk 'm!

  • emielbf
  • Registratie: Juni 2019
  • Laatst online: 22-07 07:27
kun je de HeidiSQL app niet gebruiken? daarmee kun je je table gewoon zien en rijen/waardes verwijderen/toevoegen/aanpassen. De app vertaalt dat onderwater naar de nodige SQL q's.

Acties:
  • 0 Henk 'm!

  • Daannn1987
  • Registratie: December 2012
  • Laatst online: 19:38
Ik had ook van dat geneuzel en werd een beetje moe van continue de database aanpassen... heb daarom gewoon een value filter toegepast:

SELECT mean("value") FROM "device_ElgaCurrent" WHERE ("value" < 1300 AND "value" > 0) AND $timeFilter GROUP BY time($interval) fill(null)

21xDMEGC 440wp (9240) ||| Pana 9j

Pagina: 1