DbRep Datum TIMESTAMP größer als falsch

Begonnen von ironalf, 12 März 2024, 15:05:40

Vorheriges Thema - Nächstes Thema

ironalf

Hallo,

wenn ich reduceLog mit dem Attribut timeOlderThan oder timestamp_end starte dann wird ein falsches Datum für TIMESTAMP größer als erzeugt:
2024-03-12 14:35:13.450 CET [484054] fhem@fhem LOG:  Anweisung: SELECT TIMESTAMP,DEVICE,'',READING,VALUE FROM history where  ( DEVICE = 'myStromCalculator' ) AND TIMESTAMP >= '20-07-27 02:20:59' AND TIMESTAMP <= '2023-12-02 14:35:12' ORDER BY TIMESTAMP ASC;

define Reduce_Device_Hourly_DbRep DbRep myDbLog
attr Reduce_Device_Hourly_DbRep DbLogExclude .*
attr Reduce_Device_Hourly_DbRep device myStromCalculator
attr Reduce_Device_Hourly_DbRep room DBLOG
attr Reduce_Device_Hourly_DbRep timeOlderThan d:100

setstate Reduce_Device_Hourly_DbRep reduceLog of fhem finished
setstate Reduce_Device_Hourly_DbRep 2024-03-12 14:34:49 .associatedWith myStromCalculator
setstate Reduce_Device_Hourly_DbRep 2024-03-12 14:47:29 background_processing_time 0.00
setstate Reduce_Device_Hourly_DbRep 2024-03-12 14:47:29 reduceLogState reduceLog finished. Rows processed: 0, deleted: 0
setstate Reduce_Device_Hourly_DbRep 2024-03-12 14:47:29 state reduceLog of fhem finished

Danke

betateilchen

Ich frage mich gerade, ob dabei überhaupt ein "TIMESTAMP größer als" erzeugt wird oder ob nicht einfach der älteste Wert in der Datenbank als Start genommen wird.

Denn "2023-12-02 14:35:12" wird ja mit den 100 Tagen korrekt als Endzeitpunkt berechnet.

Was passiert denn, wenn Du explizit ein timestamp_start setzt?

Übrigens wäre inzwischen "Automatisierung" das richtige Unterforum für Fragen zu DbRep.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

ironalf

Wenn ich timestamp_start setze funktioniert es.
Habe die Datenbank durchsucht aber keinen Eintrag mit dem Datum gefunden.
psql -d fhem -U fhem -c "SELECT * FROM history WHERE timestamp BETWEEN '20-07-26' AND '20-07-28';"
timestamp | device | type | event | reading | value | unit
-----------+--------+------+-------+---------+-------+------
(0 Zeilen
)

ironalf

Gibt es eine Möglichkeit es nach "Automatisierung" zu verschieben?

DS_Starter

ZitatGibt es eine Möglichkeit es nach "Automatisierung" zu verschieben?
Unten links findest du einen entsprechenden Button.

Zu dem Thema...

Führe ein "get ... minTimestamp" aus.
Was steht in dem erzeugten Reading timestamp_oldest_dataset?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

ironalf

Danke, hatte Timestamp-Einträge mit "0020-07-27 02:20:59"