FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: sash.sc am 26 Dezember 2016, 13:41:06

Titel: Logproxy für Anfänger
Beitrag von: sash.sc am 26 Dezember 2016, 13:41:06
Hallo zusammen.

Ich bin soweit, dass ich meine Diagramme frisieren will. Dabei bin ich auf LogProxya gestoßen.
Muss ich dies erst defeinieren ? So habe ich es in der WIKI jedenfalls verstanden.
Dann steht da noch, dass ich alles umstellen ! Passiert dies automatisch oder muss das manuell gemacht werden ??


     Anlegen eines logProxy devices:

    define lp logProxy

    Wenn Daten zu einem bestehenden Plot hinzugefügt werden sollen muss
        [b]das SVG device vom jeweiligen DbLog oder FileLog device auf das logProxy device umgestellt werden[/b]
        im .gplot file die #FileLog bzw. #DbLog Zeilen in #logProxy geändert
        und an den Anfang der column_spec zusätzlich FileLog:<logDevice>: bzw. DbLog:<logDevice>: eingefügt werden:

aus:


Gibt es ein verständliches WIKI von LogProxy ?

Gruß und Danke
Sascha
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 26 Dezember 2016, 14:04:05
ja. du musst es definieren. ja. du musst deine plottfiles umstellen.

ich wüsste nicht was am wiki unverständlich ist.

gruss
  andre
Titel: Antw:Logproxy für Anfänger
Beitrag von: igami am 26 Dezember 2016, 14:05:01
Du hast doch selbst schon gefunden was gemacht werden muss:
Titel: Antw:Logproxy für Anfänger
Beitrag von: Karla am 27 Dezember 2016, 16:39:25
Der Opener hat schon recht.
Das Wiki verwirrt einen reichlich.
Auch ich habe nur durch rumprobieren ein passendes Ergebniss bekommen.

Zuerst muss ein define <hier dein gewählter name,ohne die klammern> logProxy in der Befehlszeile ganz oben im fhem abgesetzt werden.

Das Wiki zählt dann noch 3 Punkte auf, die zu tun wären:
Wenn Daten zu einem bestehenden Plot hinzugefügt werden sollen muss
    1. das SVG device vom jeweiligen DbLog oder FileLog device auf das logProxy device umgestellt werden
    2. im .gplot file die #FileLog bzw. #DbLog Zeilen in #logProxy geändert
    3. und an den Anfang der column_spec zusätzlich FileLog:<logDevice>: bzw. DbLog:<logDevice>: eingefügt werden:


Zu 1. muss die fhem.cfg wie im Wiki Beispiel beschrieben:
aus:

    define SVG_PCA301 SVG FileLog_PCA301_076035:myGplotFile:CURRENT

wird dann:

    define SVG_PCA301 SVG <hier dein gewählter name,ohne die klammern>:myGplotFile:CURRENT


geändert werden. Dazu verwendet man den Befehl "Edit files" aus dem Hauptmenue von fhem.(Um die fhem.cfg editieren zu können, muss aber zuerst das Attribut editConfig im Modul "Web" auf 1 gesetzt werden!)

zu 2. wird die zugehörige *.gplot Datei geändert. Der "Edit Files" Menueeintrag listet alle verfügbaren Dateien auf. Gesucht wird die Datei, welche auch unter deinem Plot angegeben wird. Darin werden zuerst alle Zeilen die mit  #FileLog  bzw.  #DbLog beginnen, direkt hinter der # um ein <hier dein gewählter name,ohne die klammern>+Leerstelle ergänzt und dann
zu 3. noch irgendwas als "FileLog:<logDevice>: bzw. DbLog:<logDevice>:" eingefügt werden.
Das Wiki sammt Wiki-Beispiel:
aus:

#DbLog myDevice:myReading
#FileLog 4:PCA301_076035.power::
#FileLog 4:<SPEC1>.consumption::

wird:

#logProxy DbLog:myDb:myDevice:myReading
#logProxy FileLog:FileLog_PCA301_076035:4:PCA301_076035.power::
#logProxy FileLog:FileLog_<SPEC1>:4:<SPEC1>.consumption::

war da leider auch für mich nicht sehr hilfreich.
Nach einigem probieren hat es bei mir mit

#mein_logproxy FileLog:MobilPiLog:4:MobilPi.DHT22.Temperature\x3a::     anstelle von        #MobilPiLog 4:MobilPi.DHT22.Humidity\x3a::
hingehauen, und mit einer zusätzlichen Zeile
#mein_logproxy FileLog:MobilPiLog,offset=60*60*24:4:MobilPi.DHT22.Temperature\x3a::
bekomme ich eine weitere Linie mit den Daten des Vortages in den Plot.

Ich hoffe, das hilft Dir ein wenig.
Vlt. kann ja jemand die Umwandlung/Einfügung der column_spec noch etwas näher erklären und im Wiki die jeweils betroffenen Dateien irgendwie benennen.
Das sollte die Sache klarer machen.
Titel: Antw:Logproxy für Anfänger
Beitrag von: maci am 22 August 2017, 15:11:07
Also ich komme mit dem Wiki zu Logproxy nicht klar.

Ich glaube alles so gemacht zu haben, wie es im Wiki steht.

Ich habe bisher DbLog benutzt.

Ich habe mit meiner fhem.cfg in der 7 Zeile stehen:
define logPro logProxy

Jetzt ist mir aber unklar, wie das nun funktionieren soll?

Die Definition zu DbLog ist ja nach wie vor da. Diese soll auch blieben, denn ich will ja meine Logeinträge in die DB schreiben.

Wenn ich dann in die Definition des SVG Plots reinschreibe:
define Boilerladepumpe_status SVG LogPro:SVG_Boilerladepumpe:HISTORY
zuvor stand hier:
define Boilerladepumpe_status SVG DbLogging:SVG_Boilerladepumpe:HISTORY
bekomme ich immer nur die Meldung:
No Logdevice LogPro

Da ist es unerheblich ob ich das SVG File bereits geändert habe oder nicht.

Ich blicke da nicht durch!

Wie oben schon geschrieben, wenn dich Logproxy definiere, dann lege ich ja eine neue Log-Methode an
Woher weiß dann fhem was zu tun ist?

Bin kein Programmierer, und kämpfe oft mit div. Ausdrücken.
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 22 August 2017, 15:28:00
LogPro != logPro

logProxy ersetz fileLog oder dbLog nicht sondern sorgt nur dafür das du zwischen auslesen der daten für den plot und dem platten selber noch zusätzliche einflussmöglichkeiten auf die daten hast.
Titel: Antw:Logproxy für Anfänger
Beitrag von: maci am 22 August 2017, 16:47:44
Danke, jetzt ist es mir klarer,
Außerdem habe ich bei mir einen Fehler in der Definition gefunden.
Nun bekomme ich keine Fehlermeldung mehr.

Jetzt gehts ans definieren der Anzeigen.
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 22 August 2017, 16:51:05
lass die finger von konfig file. es gibt keinen grund das jemals von hand zu editieren.
Titel: Antw:Logproxy für Anfänger
Beitrag von: Christian72D am 04 Januar 2018, 13:02:10
Wie kann ich daß denn von dllog auf logproxy umstellen OHNE die Dateien von Hand anzufassen?

Bin ja schon LANG dabei... aber DAS weiß ich jetzt echt nicht.
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 04 Januar 2018, 13:09:17
der kommentar bezog sich zwar auf das normale fhem config file, aber auf logproxy sollte auch mit dem ploteditor gehen. hier ist es aber tatsächlich einfacher das plot file ein mal von hand zu editieren.
Titel: Antw:Logproxy für Anfänger
Beitrag von: RPunkt am 07 Februar 2020, 19:58:41
Hallo Leute,
auch ich bin da auch völlig überfordert mit.
Ich wollte mit als erstes mal ein Beispiel aus dem Wiki (https://wiki.fhem.de/wiki/LogProxy) vornehmen.
Hier dachte ich an den Plot zu "Sonnenauf- und -untergangszeiten plotten".
Das sollte doch sogar ohne Werte im DbLog oder FileLog funktionieren.
Bei mir kommt nur ein leerer Plot.
Was muss denn da definiert werden?
Vielleicht kann mir ja da jemand mal auf die Sprünge helfen.
Gruß
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 07 Februar 2020, 21:03:36
was genau ist denn nicht klar?

die genaue config steht doch im wiki. und dort steht das es in der fhem.cfg.demo integriert ist.

fhem mit fhem.cfg.demo und du siehst wie es aussehen muss.
Titel: Antw:Logproxy für Anfänger
Beitrag von: RPunkt am 09 Februar 2020, 11:19:38
Also entsprechend der fhem.cfg.demo habe ich den folgenden Eintrag in meiner fhem.cfg:
DEF        logProxy:SVG_04_Sun:CURRENT
   FUUID      5e39bdaa-f33f-1fc9-3651-68a17eba14b94322
   GPLOTFILE  SVG_04_Sun
   LOGDEVICE  logProxy
   LOGFILE    CURRENT
   NAME       SVG_04_Sun
   NOTIFYDEV  global
   NR         170
   STATE      initialized
   TYPE       SVG
Attributes:
   fixedrange year
   title      {"".logProxy_dec2hms($data{min1})." - ".logProxy_dec2hms($data{max1})." - ".logProxy_dec2hms($data{min2})." - ".logProxy_dec2hms($data{max2})}


und das File SVG_04_Sun.gplot sieht so aus:
et yrange [4:10]
set y2range [16:23]

#logProxy Func:logProxy_Func2Plot($from,$to,'{logProxy_hms2dec(sunrise_abs_dat($sec))}')
#logProxy Func:logProxy_Func2Plot($from,$to,'{logProxy_hms2dec(sunset_abs_dat($sec))}')
#logProxy ConstX:TimeNow(),4,10 
                                                             
plot "<IN>" using 1:2 axes x1y1 title 'Sonnenaufgang' ls l2 lw 1 with steps,\
plot "<IN>" using 1:2 axes x1y2 title 'Somnnenuntergang' ls l0 lw 1 with steps,
plot "<IN>" using 1:2 axes x1y1 title notitle ls l5 lw 1 with steps,

Trotzdem bekomme ich keinen Plot angezeigt :'(
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 09 Februar 2020, 11:41:27
hast du das logproxy device angelegt?
Titel: Antw:Logproxy für Anfänger
Beitrag von: RPunkt am 10 Februar 2020, 20:06:18
Hallo  justme1968,
äh nein.
Was habe ich denn überlesen?
Meinst Du:
define lp logProxy
Ich dachte, das braucht man nicht bzw. das sei nicht notwendig :-\
Nachtrag:
Okay, ich hab es geändert. nachdem ich lp definiert habe musste ich
define SVG_04_Sun SVG logProxy:SVG_04_Sun:CURRENT
in
define SVG_04_Sun SVG lp:SVG_04_Sun:CURRENT
ändern, dann war alles gut.
Danke für die Hilfestellung
Titel: Antw:Logproxy für Anfänger
Beitrag von: justme1968 am 10 Februar 2020, 20:13:29
wenn du einen logProxy verwenden willst musst du ihn auch definieren.