NEWS
Datum des Zeitstempels in der Anzeige "verschieben"
-
Hallo zusammen,
ich möchte ein Problem lösen, mit dem sicher nicht alleine bin, dessen Lösung ich aber komischerweise nicht gefunden habe.
Ich habe mich hier schon durch einige Artikel gelesen, in anderen Foren und youtube, dann habe ich die KI gefragt, was ein ziemlich durcheinander war ... aber irgendwie nähere ich mich nicht dem Ziel. ...
Ich habe schon einiges probiert (Query Options, Anpassungen in Flux, Override, ...) aber meine learning-by-doing-Lernkurve war noch nicht steil genug.Situation:
Ich habe el. Verbrauchswerte meiner Wärmepumpe. Der Vaillant-Adapter schreibt die fertig aggregierten Werte immer um 00:04 Uhr eines Tages in einen Datenpunkt, von dort gehen sie in die influxDB. Da der Adapter den Wert um kurz nach 00:00 Uhr schreibt, haben sie natürlich den Zeitstempel des Folgetages. Oder anders herum: Die Werte gehören zum Vortag.meine Query:
from(bucket: "iobroker") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "vaillant.0.36e895fa-c2a2-4d2b-9954-e1f81b7d7723.stats.primary_heat_generator.CONSUMED_ELECTRICAL_ENERGY.HEATING.day.data02.value") |> filter(fn: (r) => r["_field"] == "value") |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false) |> yield(name: "last")Das Ergebnis:

Mein Ziel:
Ich möchte den Graphen relativ zur x-Ache um einen Tag nach links verschieben.
(Als Ergebnis würde das Maximum vom 14.01. dann am 13.01. erscheinen.Ergänzung:
Eientlich würde es ja auch reichen, den Zeitstempel nur 5 oder 10 Minuten nach vorne zu verschieben, damit wäre er ja bereits im Vortag. Das könnte man vermutlich mit Zeitzonen manipulieren (dazu gab es schon einen Beitrag und ein Video).
Ich habe aber einen zweiten Use Case, wo ich den Zeitstempel mehr als einen Tag verschieben möchte, daher fände ich eine Lösung cool, die beide Use Cases durch entsprechend geänderte Parameter abdeckt. -
Geht Easy.
Offizielle FLUX-Dok hilft.
https://docs.influxdata.com/flux/v0/stdlib/universe/timeshift/
Am besten vor dem aggregateWindow einfügen.
-
Geht Easy.
Offizielle FLUX-Dok hilft.
https://docs.influxdata.com/flux/v0/stdlib/universe/timeshift/
Am besten vor dem aggregateWindow einfügen.
@mickemup sagte in Datum des Zeitstempels in der Anzeige "verschieben":
Geht Easy.
Offizielle FLUX-Dok hilft.
https://docs.influxdata.com/flux/v0/stdlib/universe/timeshift/
Am besten vor dem aggregateWindow einfügen.
Es kann so einfach sein!
DANKE!! -
Kein Problem
Musste ich anfangs auch ziemlich einfuxen in FLUX
Wichtig ist auch noch die:|> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)Richtig einzusetzen.
Da kann man auch noch viel herausholen/anpassen für die Darstellungbei 1/10 scheint zB der Datenpunkt nicht am richtigen Ort zu liegen...
Wenn du nur ein Wert pro Tag hast würde ich folgendes verwenden.|> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden