DbLog probleme mit aktueller version

Begonnen von justme1968, 28 Januar 2014, 09:56:31

Vorheriges Thema - Nächstes Thema

roedert

...hab auch noch eine "unschöne" Fehlermeldung bekommen (mit der aktuellen version) ..... nach dem Batteriewechsel am FHT80b:

Argument "synctime: 16" isn't numeric in multiplication (*) at /opt/fhem/FHEM/93_DbLog.pm line 228.

Tobias

Zitat von: roedert am 29 Januar 2014, 12:21:01
...hab auch noch eine "unschöne" Fehlermeldung bekommen (mit der aktuellen version) ..... nach dem Batteriewechsel am FHT80b:

Argument "synctime: 16" isn't numeric in multiplication (*) at /opt/fhem/FHEM/93_DbLog.pm line 228.
Kommt definitiv nicht vom Update... war vorher auch schon... ev müsste man ab Zeile 225 etwas anpassen. Da ich aber keine FHT´s besitze bin ich auf Zulieferung von Patches angewiesen...
      elsif($value eq "synctime") {
        $reading= "actuator-synctime";
        undef $value;
      }
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

betateilchen

Dazu muss man gar keine FHT haben ;)

Argument "synctime: 16"

Du testest aber auf

elsif($value eq "synctime") {

anstatt auf

elsif($value eq "synctime:") {

und landest deshalb im letzten else, wo probiert wird, $value als numerischen Wert zu interpretieren, was fehlschlagen muss, da der Textteil noch enthalten ist.




Das Loggen von FHT80b in der jetzigen Form in DbLog kann ohnehin nicht immer korrekt funktionieren, denn Du schreibst immer "actuator-<reading>" als readingname. Wenn aber an einer FHT80b mehr als ein Actuator (maximal 8) angemeldet sind, werden die mit actuator1..actuator8 bezeichnet. Entsprechend müsstest Du dann auch die Readings so benennen. Es gibt sowohl "actuator" als auch "actuatorN".
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Tobias

ich habe dieses CodeBlock von Boris Neubert übernommen. Ich kann das nicht testen... Schickt mir nen Patch...
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

betateilchen

Du wirst doch einen fehlenden Doppelpunkt auch ohne DIFF-Datei hinbekommen?  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Joachim

#20
Moin Tobias,
bei der letzten aktualisierung von DbLog hat sich in Zeile 709 ein Sonderzeichen eingeschlichen
$readings[$i][1] = "%" if(length($readings[$i][1])==0); #falls Reading nicht gef\FCllt setze Joker
und in Zeile 1704 nocheinmal
Damit erh\E4lt man alle aktuellen Readings "temperature" von allen in der DB geloggten Devices.
 
zumindest meutert mich gedit an, wenn ich DbLog öffnen will.

Gruß Joachim

Edith:
Oder habe ich mit codepage UTF-8 den falschen Zeichensatz?
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

betateilchen

Hallo Tobias,

ich hab mal noch eine Grundsatzfrage: Die Tabelle current wird wohl gar nicht benutzt? Bei mir (sqlite3) ist die jedenfalls immer leer. Nicht dass ich da etwas vermissen würde, aber irgendwas muss sich irgendjemand ja mal dabei gedacht haben, oder?

Viele Grüße
Udo

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

roedert

Also bei mir (mysql) ist in current jeweils der letze Wert eines jeden Readings.

Puschel74

Hallo,

ich habe heute auch mal meine Definitionen der Plots "aufgeräumt" nachdem ich mal wieder in das Logfile geschaut habe und das
ZitatDefining DbLog SVG-Plots with :CURRENT is deprecated. Please define DbLog SVG-Plots with :HISTORY instead of :CURRENT. (define <mySVG> SVG <DbLogDev>:<gplotfile>:HISTORY)
gefunden habe.

Ich habe ja kein Problem mit der Meldung aber ich wollt nur mal my2cents beitragen  ;D

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Tobias

Zitat von: betateilchen am 02 Februar 2014, 19:46:15
Hallo Tobias,

ich hab mal noch eine Grundsatzfrage: Die Tabelle current wird wohl gar nicht benutzt? Bei mir (sqlite3) ist die jedenfalls immer leer. Nicht dass ich da etwas vermissen würde, aber irgendwas muss sich irgendjemand ja mal dabei gedacht haben, oder?

Viele Grüße
Udo

liegt an deiner Einstellung im DbLog. Steht bestimmt auf "History"  ;)

Puschel: Die Meldung soll dir sagen das die SVG´s umdefiniert werden soltzen...
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

betateilchen

Zitat von: Tobias am 02 Februar 2014, 21:28:22liegt an deiner Einstellung im DbLog. Steht bestimmt auf "History"

Hau mich nicht, ich hab gestern VOR meinem Posting lange erfolglos gesucht, um eine Antwort zu finden. Wo soll ich denn da irgendwo etwas einstellen können?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Joachim

Moin betateilchen,

Es gibt ein nicht dokumentiertes attr, mit dem man zw. current und/oder history unterscheiden kann, wenn es nicht gesetzt ist, wird immer current/history gesetzt.
nur dann wird current mit dem letzten Wert gefüttert (beim Starten wird der Wert eingetragen, danache wird in dieser Tabelle der Wert nur noch upgedatet), und wenn ich das richtig nachvollzogen habe, flüchtig im RAM gespeichert.
Der Sinn hat sich mir auch noch nicht ganz erschlossen, aber ich versuche gerade mir das für einen Umbau von DbLog zu nutze zu machen.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Tobias

komisch... ohne das Attribut "DbLogType" wird immer in Current und History geloggt. Das ist Default.
Mit diesem Attr. kannst du einstellen ob du nur aktuelle Werte (current) oder nur historische (history) oder beides (Current/History) (->default) haben willst.

Seit neuestem benutze ich auch die CurrentTabelle im Modul Text2Speech um Statistiken über die Nutzung der MP3 Files zu sammeln. Wird später noch benutzt um nicht verwendete Files automatisiert löschen zu können.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Tobias

Zitat von: Joachim am 03 Februar 2014, 10:29:57
Der Sinn hat sich mir auch noch nicht ganz erschlossen, aber ich versuche gerade mir das für einen Umbau von DbLog zu nutze zu machen.
Versteh ich nicht...

Die letzten Änderungen am DbLog (Nutzung von Wildcards) sind alles Vorarbeiten um per fhemweb Daten aus der Db zu bekommen, aber auch um noch etwas später Daten löschen zu können.
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Joachim

Moin Tobias,
Das bezieht sich auf diesen Tread:
http://forum.fhem.de/index.php/topic,17468.15.html
Zitatauf jeden fall hört sich das ganz gut an...
Macht doch einen Patch, dann checke ich das ins contrib ein zum breiten testen. Bitte diese Funktionalität per Attr steuern.
Auf meiner TODO-Liste steht die Idee mit der Aggregation und dem daraus resultierenden Löschen... Meine Postgresql-DB ist zZ. 2GB groß

Ich bin mit dem Umbau fast fertig, und habe ersteinmal das undokumentierte attr current dafür genutzt, da ich dafür keine andere Verwendung gesehen habe.
Das ganze muß noch ein paar Tage getestet werden, und dann stelle ich es zur Verfügung.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232