NEWS
grafana - today() startet tag bei 02:00
-
Moin,
die Daten kommen einer Influx2DB und liegen damit unter dem "Zeitformat" UTC vor. Ich habe eine Fluxx-Query (ich habe im Beispiel jetzt mal auf den entscheidenden Teil gekürzt, die timezone des dashboards ist Deutschland.
Version mit today()
import "timezone" option location = timezone.location(name: "Europe/Berlin") from(bucket: "nodered") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")Die Daten beginnen um 02:00

Version, bei der ich für das Dashbaord "manuell" den aktuellen Tag als Timeslot vorgebe
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "nodered") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")Der Tag beginnt um 00:00

Die jeweils angezeigten Werte sind korrekt...
Was übersehe ich?
-
Moin,
die Daten kommen einer Influx2DB und liegen damit unter dem "Zeitformat" UTC vor. Ich habe eine Fluxx-Query (ich habe im Beispiel jetzt mal auf den entscheidenden Teil gekürzt, die timezone des dashboards ist Deutschland.
Version mit today()
import "timezone" option location = timezone.location(name: "Europe/Berlin") from(bucket: "nodered") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")Die Daten beginnen um 02:00

Version, bei der ich für das Dashbaord "manuell" den aktuellen Tag als Timeslot vorgebe
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "nodered") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")Der Tag beginnt um 00:00

Die jeweils angezeigten Werte sind korrekt...
Was übersehe ich?
-
@cocomp Kurios!
Lass dir das mal als Tabelle anzeigen. Vielleicht auch mal das ganze Skript zeigen.
Ich Wette da fehlen Daten von 0:00 bis 2:00 Uhr@spacerx Das ist korrekt, die Ergebnistabelle zeigt, wie das Diagramm, Werte ab 02:00.

Aber warum "filtert" today() in der Range die Zeit zwischen 00:00 01:59 raus?
Hier das komplette JSON
{ "id": 35, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 }, "type": "timeseries", "title": "Panel Title", "datasource": { "type": "influxdb", "uid": "D84bEx3nz" }, "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "stepAfter", "barAlignment": 0, "lineWidth": 1, "fillOpacity": 0, "gradientMode": "none", "spanNulls": false, "showPoints": "auto", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "hideFrom": { "tooltip": false, "viz": false, "legend": false }, "thresholdsStyle": { "mode": "off" } }, "color": { "mode": "palette-classic" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "single", "sort": "none" }, "legend": { "displayMode": "list", "placement": "bottom", "calcs": [] } }, "targets": [ { "datasource": { "type": "influxdb", "uid": "D84bEx3nz" }, "query": "import \"timezone\"\r\noption location = timezone.location(name: \"Europe/Berlin\")\r\nfrom(bucket: \"nodered\")\r\n |> range(start: today())\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"KG.hz.SZ_A_Plus15\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"value\")", "refId": "A" } ] } -
@spacerx Das ist korrekt, die Ergebnistabelle zeigt, wie das Diagramm, Werte ab 02:00.

Aber warum "filtert" today() in der Range die Zeit zwischen 00:00 01:59 raus?
Hier das komplette JSON
{ "id": 35, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 }, "type": "timeseries", "title": "Panel Title", "datasource": { "type": "influxdb", "uid": "D84bEx3nz" }, "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "stepAfter", "barAlignment": 0, "lineWidth": 1, "fillOpacity": 0, "gradientMode": "none", "spanNulls": false, "showPoints": "auto", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "hideFrom": { "tooltip": false, "viz": false, "legend": false }, "thresholdsStyle": { "mode": "off" } }, "color": { "mode": "palette-classic" }, "mappings": [], "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "red", "value": 80 } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "single", "sort": "none" }, "legend": { "displayMode": "list", "placement": "bottom", "calcs": [] } }, "targets": [ { "datasource": { "type": "influxdb", "uid": "D84bEx3nz" }, "query": "import \"timezone\"\r\noption location = timezone.location(name: \"Europe/Berlin\")\r\nfrom(bucket: \"nodered\")\r\n |> range(start: today())\r\n |> filter(fn: (r) => r[\"_measurement\"] == \"KG.hz.SZ_A_Plus15\")\r\n |> filter(fn: (r) => r[\"_field\"] == \"value\")", "refId": "A" } ] }Da wird in einem System die falsche/keine Zeitzone gesetzt sein. Ab nächsten Sonntag ist die Abweichung nur noch 1 Stunde. :-)
-
Da wird in einem System die falsche/keine Zeitzone gesetzt sein. Ab nächsten Sonntag ist die Abweichung nur noch 1 Stunde. :-)
@thomas-braun War auch meine erste Idee, aber wo?
Die Datenquelle ist nutzt UTC. Stelle ich das grafana-dashboard auf UTC um, beginnt die Query mit today () nicht mehr um 02:00 sondern um 00:00.
Also scheint durch today () der Tag nicht mit der deutschen Zeit 00:00 sondern mit UTC 00:00 zu beginnen, was dann ja der deutschen Zeit 02:00 entspricht...
-
@thomas-braun War auch meine erste Idee, aber wo?
Die Datenquelle ist nutzt UTC. Stelle ich das grafana-dashboard auf UTC um, beginnt die Query mit today () nicht mehr um 02:00 sondern um 00:00.
Also scheint durch today () der Tag nicht mit der deutschen Zeit 00:00 sondern mit UTC 00:00 zu beginnen, was dann ja der deutschen Zeit 02:00 entspricht...
@cocomp sagte in grafana - today() startet tag bei 02:00:
mit UTC 00:00 zu beginnen, was dann ja der deutschen Zeit 00:00 entspricht...
enäää!
heute ist 0:00Z (UTC) 02:00 MESZ
-
@cocomp sagte in grafana - today() startet tag bei 02:00:
mit UTC 00:00 zu beginnen, was dann ja der deutschen Zeit 00:00 entspricht...
enäää!
heute ist 0:00Z (UTC) 02:00 MESZ
@homoran Jupp, Schreibfehler bei mir.
00:00 UTC ist 02:00 deutsche Zeit ;-) Habe ich in meinem Post geändert.
Das Problem scheint aber today() zu sein, denn eigentlich sollte die Tabelle / Darstellung mit 00:00 beginnen:
https://github.com/grafana/grafana/issues/43378 -
@homoran Jupp, Schreibfehler bei mir.
00:00 UTC ist 02:00 deutsche Zeit ;-) Habe ich in meinem Post geändert.
Das Problem scheint aber today() zu sein, denn eigentlich sollte die Tabelle / Darstellung mit 00:00 beginnen:
https://github.com/grafana/grafana/issues/43378 -
@cocomp das habe ich auch so nachgelesen.
dann bleibt dir noch:
option location = timezone.fixed(offset: -Xh)und damit die Zeit selber hin rücken damit du today() benutzen kannst.
@spacerx sagte in grafana - today() startet tag bei 02:00:
@cocomp d
ist das Kunst oder kann das weg

-
@spacerx sagte in grafana - today() startet tag bei 02:00:
@cocomp d
ist das Kunst oder kann das weg

-
@spacerx sagte in grafana - today() startet tag bei 02:00:
@cocomp d
ist das Kunst oder kann das weg

-
@cocomp das habe ich auch so nachgelesen.
dann bleibt dir noch:
option location = timezone.fixed(offset: -Xh)und damit die Zeit selber hin rücken damit du today() benutzen kannst.
@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp das habe ich auch so nachgelesen.
dann bleibt dir noch:
option location = timezone.fixed(offset: -Xh)und damit die Zeit selber hin rücken damit du today() benutzen kannst.
Das wird immer kurioser, denn das verändert nichts...
-
@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp das habe ich auch so nachgelesen.
dann bleibt dir noch:
option location = timezone.fixed(offset: -Xh)und damit die Zeit selber hin rücken damit du today() benutzen kannst.
Das wird immer kurioser, denn das verändert nichts...
@cocomp ich bin jetzt auch mal an den Rechner gesprungen und hab das mit den Werten von meinem Stromzähler mal getestet.
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "ioBroker") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "Vb_Stromzaehler") |> filter(fn: (r) => r["from"] == "system.adapter.javascript.0")
Macht genauso, wie es soll.

-
@cocomp ich bin jetzt auch mal an den Rechner gesprungen und hab das mit den Werten von meinem Stromzähler mal getestet.
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "ioBroker") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "Vb_Stromzaehler") |> filter(fn: (r) => r["from"] == "system.adapter.javascript.0")
Macht genauso, wie es soll.

@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp ich bin jetzt auch mal an den Rechner gesprungen und hab das mit den Werten von meinem Stromzähler mal getestet.
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "ioBroker") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "Vb_Stromzaehler") |> filter(fn: (r) => r["from"] == "system.adapter.javascript.0")
Macht genauso, wie es soll.

Das ist wirklich kurios, dann werde ich mal weiter forschen gehen...
Danke trotzdem für die Mühe... -
@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp ich bin jetzt auch mal an den Rechner gesprungen und hab das mit den Werten von meinem Stromzähler mal getestet.
import "timezone" // import wegen der Berechnung um 02:00:00 option location = timezone.location(name: "Europe/Berlin") from(bucket: "ioBroker") |> range(start: today()) |> filter(fn: (r) => r["_measurement"] == "Vb_Stromzaehler") |> filter(fn: (r) => r["from"] == "system.adapter.javascript.0")
Macht genauso, wie es soll.

Das ist wirklich kurios, dann werde ich mal weiter forschen gehen...
Danke trotzdem für die Mühe... -
@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp wie ist den deine Default Timezone gesetzt?
Europe / Berlin - sowohl global für grafana als auch im Dashboard. Und die UTC-Zeitstempel in der Influx2DB stimmen.
Was mich halt stutzig macht, dass der feste timeslot in Verbindung mit
from(bucket: "nodered") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")das gewünschte Ergebnis bringt.
-
@spacerx said in grafana - today() startet tag bei 02:00:
@cocomp wie ist den deine Default Timezone gesetzt?
Europe / Berlin - sowohl global für grafana als auch im Dashboard. Und die UTC-Zeitstempel in der Influx2DB stimmen.
Was mich halt stutzig macht, dass der feste timeslot in Verbindung mit
from(bucket: "nodered") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "KG.hz.SZ_A_Plus15") |> filter(fn: (r) => r["_field"] == "value")das gewünschte Ergebnis bringt.
-
@cocomp hier mal ein Ausschnitt, das hab ich bei dir nicht so gesehen.

Sicher das deine Zeitzone in deinem System stimmt?
-
@cocomp mal eine andere Frage, wie kommt das timeshift -0m da hin.
Das kann ich gar nicht eingeben.
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

