Ich habe mir das jetzt mal in der Datenbank angesehen.
Wer wissen will, wie man das macht, darf hier gerne weiter lesen. Alle anderen, ab ins Bett.
Man braucht dazu das "SQLite Web" Addon. Wie man vermuten kann, findet man das bei den Addons.
Ruft man dieses auf, sieht man eine Oberfläche und links eine Liste der Tabellennamen.
event_data
event_types
events
usw.
Für uns Interesant:
states
states_meta
Wir klicken erst einmal auf states_meta und dann ganz oben auf QUERY
Im mittleren Feld sehen wir dann "SELECT * FROM "states_meta". Das ergänzen wir durch WHERE entity_id = "sensor.bitshake_smartmeterreader_e320_e_in" "wobei das sensor.bitshake_smartmeterreader_e320_e_in" durch den Namen eures Sensor ersetzt werden muß, den ihr abfragen wollt.
Nun klicken wir auf das blau unterlegte "Execute" und wenn alles richtig eingegeben wurde, sollte eine Zeile ausgegeben werden.
Für uns wichtig ist die Zahl unter "metadata_id"
Jetzt wählen wir links die Tabelle "states" aus, oben wieder Query.
Wieder steht im mittleren Feld "SELECT * FROM "states", welches wir mit WHERE metadata_id = 6802 <-- gemerkte Nummer
Jetzt sehen wir 1000 Zeilen mit Daten. Warum nur 1000 ? Nun, ihr könnt euch denken, das bei vielen Einträgen die Anzeige reichlich lange dauern würde. Das interessiert uns aber erst mal nicht.
In der Spalte "state" sehen wir nun die Meßwerte und in der Spalte "last_updated_ts" das Datum und die Zeit, wann dieser Eintrag erfolgte.
Datum und Zeit sind im Linux Format. Im Internet gibt es einige Converter, die einem das wieder in reale Werte übersetzen.
Jetzt hängen wir noch ein "AND state > 5000" an die Befehlszeile dran und drücken wieder Execute.
5000 deswegen, weil ich eher selten mehr als 5000 Watt beziehe. Ihr könnte da aber auch jeden anderen Wert eintragen.
Entscheident ist, das man nun auch Zeilen mit "unavailable" und "unknown" in der spalte state sehen KANN.
Kann deswegen, weil bei euch das ja nicht so sein muß, aber bei mir werden da 41 Zeilen angezeigt.
Nimmt man nun den Wert aus der Spalte "last_updated_ts" und lässt das übersetzen, sieht man Datum und Uhrzeit, wann das Ereignis aufgetreten ist.
Hängt man an die Befehlszeile noch ein "ORDER BY last_updated_ts" hinten dran und führt dann Execute wieder aus, wird die Tabelle nach Datum und Uhrzeit sortiert angezeigt. Das älteste Ereignis oben, das neueste unten.
So kann man sich einen schnellen Überblick über den Zeitraum verschaffen.
In meinem Fall war das erste Ereignis am 12. März und das letzte am 22. März.
Was bringt uns das ganze nun ?
Wir wissen jetzt zumindest auf die Millisekunde genau, wann dieser Sensor nicht erreichbar war bzw. einen unbekannten Wert geschickt hat. Wer also den Verdacht hat, das bei ihm Regelmäßig bzw. immer zur selben Zeit ein Ausfall auftritt, der kann das hiermit überprüfen.
Interessant ist die Zeile ganz rechts in der Tabelle. "Edit / Delete"
Ja, man kann hier falsche Werte auch entsprechend korrigieren oder halt auch löschen. Wobei ich eher davon abrate, in der Datenbank rum zu spielen, wenn man nicht genau weiß. was man tut.