Ich habe viele Variablen die ich logge! Ca. 50 Variable.
Wenn ich die Stundlichen Werte auslese funktioniert es bei allen Variablen.
Jetzt habe ich eine neue Variable angelegt und geloggt. Werte werden auch ins Archiv geschrieben.
Wenn ich Stündlich mit über die Function AC_GetAggregatedValues abfrage, bekomme ich keine Werte bei der neu angelegten Variable.
$buffer_var1 = AC_GetAggregatedValues(30005, 15790, 0, $startzeit, $endzeit, 24);
Wenn ich aber “AggregationLevel” >= “5” abfrage, bekomme ich Werte!
$buffer_var1 = AC_GetAggregatedValues(30005, 15790, 5, $startzeit, $endzeit, 24);
Was mache ich falsch? Worauf muss ich achten? Gibt es ein “Limit”?
Bei den anderen ca. 50 Variablen funktioniert es doch!
50 geloggte Variablen sollte weit entfernt von allen relevanten Limits sein.
Hast du die Funktion nur direkt nach Erstellung der Variablen genutzt? Falls ja, dann ist es möglich, dass die aggregierten Daten einfach noch nicht geschrieben wurden. Das passiert alle paar Minuten, die Variante ist also nur relevant wenn du eine Variable erstellst und direkt das Skript testest. Falls das der Fall ist, einfach 5 Minuten warten, dann sollte die Aggregation da sein.
Ansonsten kann es sein, dass deine Aggregation ungültig ist, zum Beispiel falls du per Skript Werte nachgeschoben hast ohne zu reaggregieren. Öffne einfach mal das Archiv in der Konsole. Falls da was nicht passt, dann wird dir die Reaggregation auch direkt angeboten. Zur Sicherheit kannst du das dort natürlich auch ohne Meldung manuell anstoßen.
Falls es das beides nicht sein sollte, schauen wir mal genauer. Ich vermute aber spätestens mit der Reaggregation tauchen die Werte dann auf.
Ich vermute, dass dein Zeitraum zu eng ist. Versuch mal es um ein paar Sekunden vorher und nachher zu erweitern, ob dann ein Wert kommt. Also z.B. um 16:00:10 abfragen für den Zeitraum 14:59:58 bis 16:00:02
Danke.
Reaggregation habe ich durchgeführt.
Die Variable wird schon seid zwei Tagen gelogt.
Wenn ich die Variable im Archiv öffne sehe ich auch die Werte.
Start und End Zeit sind 24 Stunden! (Start:14:05:47 - 08.03.2026 / End:14:05:47 - 09.03.2026)
Die Änderungen sind auch irrelevant. Im Zweifelsfall wiederholt sich der aggregierte Wert jede Stunde.
Welches Betriebssystem nutzt du? Magst du sonst mal in den db-Ordner bei den Daten schauen? Dort sollte eine .hour.csv sein, welche die aggregierten Stundenwerte beinhaltet. Da kannst du ja sonst mal schauen, ob die aktuell ist. Die letzte Zeile ist dann auch der letzte Wert. Der erste Eintrag in der kommagetrennten Liste ist ein Unix Zeitstempel, der halt maximal eine Stunde alt sein sollte. Das kannst du beispielsweise hier auflösen: Time Converter
Ansonsten gebe in deinem Skript doch mal deine Werte für $startzeit und $endzeit aus, nicht dass dort etwas verdreht wird. Poste die auch gerne hier.
Das ist zum Beispiel meine Start und End Zeit: Start:11:30:12 - 10.03.2026 / End:11:30:12 - 11.03.2026!
Wenn ich die Variable “Regarigiere kommt:
”11.03.2026, 11:31:42 | Archive Control | Reaggregation für VariablenID #15790 abgeschlossen! (345 Einträge)”
Finde nur eine “15790.csv” Datei! Keine “15790_hour".csv”!
Da steht (Die letzen Einträge): 1773217323,NC4xMg== 1773217802,NC4xMw== 1773218110,NC4xNA== 1773218494,NC4xNQ== 1773222154,NC4xNg== 1773222629,NC4xOA== 1773223046,NC4xOQ== 1773223520,NC4y
Ich komme einfach nicht weiter, aber Danke für Eure hilfe!
Ich bin jetzt nicht der Held was das AC_xxx Thema angeht, aber meine Probleme damit konnte ich nur lösen in dem ich mit der Startzeit übertrieben weit zurück gegangen bin.
@atmel Was sollen denn das für Werte sein?? Zahlen sind es offenbar nicht, insoweit wird auch die Berechnung von Mittelwerten bei der Aggregation nicht funktionieren.
Da ist trotzdem irgendwas kaputt, in der CSV müssten nach dem Komma normale lesbare Zahlenwerte stehen. Darin liegt auch deine Ursache, warum die Aggregation nicht funktioniert.
Ich würde nochmal schauen, ob irgendwas bei den Daten falsch erzeugt/konvertiert wird. Das sollten normale Floats sein, sind es aber zumindest laut Archiv nicht.
Das erklärt auch warum du keine .hour Datei gefunden hast, da Strings ja nicht aggregiert werden. Spannend, dass es mit den live berechneten minütlichen Aggregationen trotzdem klappt.