93_DbLog - Überlegungen zur Optimierung (RPI und andere Systeme)

Begonnen von JoeALLb, 27 Januar 2017, 22:16:19

Vorheriges Thema - Nächstes Thema

abc2006

ich hab dich missverstanden ...

Danke und Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

abc2006

#646
Hi,
die valueFn hab ich hinbekommen, gute Idee die du da eingebaut hast. Bin noch am überlegen wie bzw. ob ich das generisch lösen kann, ohne den Inhalt zu kennen ... aber vermutlich hast du das auch schon versucht.  ::)

Zum changeValue hab ich aber noch ne Frage:
hier steht :

Zitatset <name> changeValue "<alter String>","<neuer String>"
# der alte String wird in den neuen String geändert.
# Beide Strings können Leerzeichen enthalten. Die Werte sind in Quotes zu setzen und durch Komma zu trennen.

Also kann ich bei einem Value

"a b"

das b weg machen mit
set repdb changeValue "a b","a"

Was aber nicht in der commandref zu stehen scheint, ob ich hier auch z.B. $Reading und $value sowie perl verwenden kann...

Ich habe in der Datenbank
Value:Unit-Paare:
"11.14 Wh":""
"22.35 Wh".""

mit "strings" bekomm ich die nicht auseinander ...
das " Wh" löschen könnte gehen, aber nur wenn <alter String> auch <alter Teilstring> bedeutet ...

Grüße,
Stephan

editiert: Formulierungen überarbeitet
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

DS_Starter

#647
Hi Stephan,

Zitatset repdb changeValue "a b","a"
Ja, so ist es.

ZitatWas aber nicht in der commandref zu stehen scheint, ob ich hier auch z.B. $Reading und $value sowie perl verwenden kann...
Steht da so nicht drin weil es momentan nicht geht. Du hast natürlich Recht ... diese Möglichkeit wäre eine tolle Sache um die Erstetzung generischer zu gestalten.

Ich nehme mir das mal mit vor die Funktion aufzupeppen. In deinem speziellen Fall hilft dir das nichts....

Grüße
Heiko
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

abc2006

ZitatIn deinem speziellen Fall hilft dir das nichts....
Alles klar. Ist nicht so schlimm. Die neuen Daten sind ja einwandfrei.

Danke!

Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

JoeALLb

Hallo zusammen,

für eine neue Installation nutze ich zur Zeit
DbLogType SampleFill/History

Das klappt soweit auch ganz gut, jedoch wenn ich einen Plot bearbeite, wird EINE Zeile, nämlich
HeizungKeller.1.1.1_A:ventil-get
in der Combobox immer ersetzt durch
hz.Heizkreis.Keller.RuecklaufGesamt:measured-temp:::
also den Wert der ersten Zeile.

Wenn ich ihn manuell wieder auf "HeizungKeller.1.1.1_A:ventil-get" stelle und write plot klicke, funktioniert der Plot auch wie gewünscht,
jedoch ist es mir schon mal passiert, dass ich versehentlich einen Wert geändert habe und somit der plot nicht mehr funktionierte.

Schön wäre es also, wenn die Combobox in allen Zeilen korrekt ausgefüllt wäre, nicht nur in den ersten 8.

Im HTML-Quellcode steht schon der falsche Wert als "selected" drinnen, nämlich
<option selected="selected" value="hz.Heizkreis.Keller.RuecklaufGesamt:measured-temp">hz.Heizkreis.Keller.RuecklaufGesamt:measured-temp</option>

Ich vermute fast, dass es kein Fehler im DbLog-Modul ist, aber im SVG-Modul scheint er auch nicht angesiedelt zu sein?!?
Hat jemand eine Idee?

Anbei ein Screenshot der zeigt, dass in der gplot-Datei etwas anderes angezeigt wird als in FHEMWEB. Die gplot-Datei stimmt!

sG
joe

FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

DS_Starter

Hallo Joe,

ich habe mir jetzt nicht SVG.pm genauer angesehen, aber bei Aufruf der entspechenden DbLog-Funktion übergibt SVG einen Parameter $max.
$max wird in der DbLog-Funktion auf "8" begrenzt, wenn $max gößer sein sollte.
Warum das so ist kann ich leider nicht sagen .... die Funktion gibt es schon länger als ich mich mit dem Modul beschäftige.

Möglicherweise hängt aber deine Beobachtung damit zusammmen.

Um das zu testen/verifizieren kannst du im eingecheckten DbLog die Zeile 4694 mal abändern:


original:   $max = 8 if($max > 8);

ändern z.B.:  $max = 11 if($max > 11);


Ich bin nur darauf gekommen weil du von 8 Zeilen geschrieben hast.
Eine andere Möglichkeit DbLog betreffend kann ich mir nciht vorstellen.

LG,
Heiko
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

JoeALLb

Hallo Heiko,

JA, das ists!!!! Danke!
Stellt sich nur die Frage, warum der Code enthalten ist....

Hat mich immer mal wider geärgert wenn ich mir damit einen Plot kaputt gemacht habe...


sG
Joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

DS_Starter

ZitatStellt sich nur die Frage, warum der Code enthalten ist....
Ja, das wüßte ich auch gern. Möglicherweise hat man ein (willkürliches) Limit eingebaut.
Vielleicht kann Rudi Aufklärung geben, irgendeinen Sinn wird es wohl haben ... oder gehabt haben.

Wäre etwas um im SVG Forum mal nachzufragen ...

LG,
Heiko
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

JoeALLb

Es gibt 8 Farben für Linien, vermutlich hängt es damit zusammen...
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

DS_Starter

ZitatEs gibt 8 Farben für Linien, vermutlich hängt es damit zusammen...
Klingt schlüssig ...
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

JoeALLb

Hallo Heiko,

habe von Rudi keine Antwort bekommen, bin mir amber ziemlich sicher, dass wir das Limit anheben könnten.
Vermutlich könnten wir es sogar ohne Attribut machen, wobei wir mit Attribut die Möglichkeit hätten, den Standardwert bei 8 zu belassen...
Ob das dann noch jemand versteht, bezweifle ich jedoch....

Noch etwas ist mir aufgefallen:

Sollte ich damit nicht Datensätze loggen können, da es sich um einen validen Devspec handelt?
set sql addLog Gaszaehler:FILTER=verbrauch_.*=.*

geht jedoch nicht.

Dies funktioniert, jedoch kann ich hier nicht auf bestimmte Werte filtern.
set sql addLog Gaszaehler:verbrauch_.*


ein "list Gaszaehler:FILTER=verbrauch_.*=.*" funktioniert jedenfalls!


sG
joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

DS_Starter

Hallo Joe,

ich habe in der angehängten Version 3.8.7 das Limit mal auskommentiert. Es wird also so verwendet wie es von SVG übergeben wird.
Vermutlich hat es keine negativen Auswirkungen. Habe es auch bei mir getestet.

Dennoch würde ich mich freuen wenn es ein paar mehr Tester geben würde bevor ich die Änderung einchecke !!!

Zum Addlog ...

Das devspec ist valide, ja. Aber die Syntax vom Addlog ist:

set <name> addLog <devspec>:<Reading>

D.h. nach devspec muß nochmal ein ":" gefolgt von dem relevanten Reading kommen welches für Addlog verwendet werden soll. Wenn man das/die Readings innerhalb des devspec filtert, wäre die Ergänzung nur ein ":.*".

Es müsste also so funktionieren:


set sql addLog Gaszaehler:FILTER=verbrauch_.*=.*:.*


Ich habe für addlog das verbose 4 etwas erweitert. Man sieht dann genau welche Devices die devspec Spezifikation als valide erachtet und zur Verwendung an addlog zurück gibt.

Also wie gesagt, über ein paar mehr Tester bzgl. SVG würde ich mich freuen.

LG,
Heiko
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

enno

Hallo Heiko,

ich habe deine Änderung bei mir mal eingebaut. Bis jetzt ohne Problem.

Ich hatte zu dem Thema schon mal gefragt, damals aber keine zufriedenstellende Lösung bekommen. Freut mich wenn es jetzt klappt.

https://forum.fhem.de/index.php/topic,76008.msg773789.html#msg773789

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

JoeALLb

Hallo Heiko,.


Danke, werds morgen einbauen.
Ist das auch der Grund, warum obiges devspec auch bei
excludeDevs nicht greift?

(Hintergrund: ich möchte für alle KNX devices das Loggen von "last-sender" verhindern.... Das wird nämlich sehr oft gesendet.)


SG Joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

DS_Starter

Ist das auch der Grund, warum obiges devspec auch bei excludeDevs nicht greift?

das Attribut "excludeDevs " füttert ganz trivial die devspec2array-Funktion. Die bringt dann das Ergebnis zurück.
Das sollte ganz normal funktionieren.

Grüße,
Heiko
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