FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: cerberus am 16 Juni 2014, 21:21:32

Titel: PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: cerberus am 16 Juni 2014, 21:21:32
Hallo, CW2 hat  für den PIUSV einen neuen PiUSV Monitor (Debian-Package) 02.06.2014 v1.2 herausgebracht in dem jetzt der LOG entsprechend angepasst wurde.

23:40:32 2014-06-15 PRI_POW BAT_LOW
23:41:21 2014-06-15 PRI_POW BAT_LOW
16:19:06 2014-06-16 PRI_POW BAT_LOW
19:45:40 2014-06-16 PRI_POW BAT_LOW


Meine Frage ist jetzt wie ich immer den neusten Logeintrag als Reading oder Sate in FHEM anzeigen lassen kann? Ich könnte mir vorstellen das ganze dann als Readings an  einen Dummy zu übergeben und dann mit Readingroup anzeigen lassen.

Gruß
cerberus
Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: cerberus am 16 Oktober 2014, 23:15:02
Ich mal wieder. Hat jemand eine TIPP wie ich die Werte aus dem LOG im oberen Beitrag, also z.B. PRI_POW und BAT_LOW parsen kann und z.B. dann einem Dummy als State übergebe. Ich habe schon mal im Forum geschaut und bin auf diesen Beitrag gestoßen.

http://forum.fhem.de/index.php/topic,6483.msg27136.html#msg27136 (http://forum.fhem.de/index.php/topic,6483.msg27136.html#msg27136)

Ich weiß jedoch nicht wie das mit Perl genau funktioniert und würde gern wissen wie ich diesen Code auf meinen Fall anwenden kann. Wie sage ich mit Perl das ich aus der letzte Zeile im LOG den Wert der Spalte 3 und 4 per notify übergebe?

Gruß
cerberus
Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: Inputsammler am 17 Februar 2016, 21:21:42
Hallo zusammen,

ich habe es bis jetzt nicht geschafft die Logdatei so umzubiegen
das es FHEM einbinden kann.

2016-02-17 21:05:58 [DEBUG] Current Status: 9
2016-02-17 21:05:58 [DEBUG] U: 3763mV, I: 407.8mA
2016-02-17 21:05:59 [DEBUG] Current Status: 9
2016-02-17 21:05:59 [DEBUG] U: 3763mV, I: 409mA
2016-02-17 21:05:59 [DEBUG] Current Status: 9
2016-02-17 21:05:59 [DEBUG] U: 3763mV, I: 409mA


Habe Versucht mit Polling zu lösen. Aber leider komme uch nicht auf die aktuelle Werte.
Mir würde reichen alle 30 sec die Werte aus der Datei auszulesen.
Gruß Gerd

Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: Inputsammler am 18 März 2016, 07:54:34
Hallo zusammen,

habe eine fast Lösung
- Log angelegt in FHEM
- Orginale Log datei gelöscht
- Systemlink von der Logdatei von der USV mit der orginal FHEM log

-Nun lasse ich über einen Cron Job ein Python Script laufen

Nicht schon aber es funktioniert.
logFile = r'testLog.log'
out = []

with open(logFile, 'r') as f:
in_lines = f.readlines()
for line in in_lines:
line = list(line)
if len(line) > 10:
line[10] = '_'
out.append(''.join(line))

with open(logFile, 'w') as f:
f.writelines(out)
Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: Wernieman am 18 März 2016, 09:12:38
Nur mal Ideen als Stichworte:
- pipe d.h. anstatt des Logfiles schreibt deine USV-Software in eine pipe, welche von einem anderen proggi ausgewertet wird
    (Stichwort mkfifo)
- es gibt möglichkeiten, sich bei Änderungen einer Datei benachrichten zu lassen
    (Stichwort inotify, dnotify)

Nur mal so "in den Raum" geworfen ...
Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: Inputsammler am 18 März 2016, 13:45:50
Hey,

Ja das stimmt. Werde mich mal damit auseinander setzen.
Evtl. Komm ich auch zu einen Ergebnis.

Die SW von der USV schreibt pro sec in die Datei.
Leider ist der Source Code noch nicht verfügbar.

Da die Infos Grafik ja nicht Sekunden genau sein muss.
Reicht es wenn ein Script die Datei einfach etwas manipuliert.
Damit man eine schöne SVG machen kann. ;D

Perl soll das ja noch schneller können. Dabei bin ich zu keinen funktionierendem Ergebnis gekommen.
Eigentlich gehört ja nur die 10 Stelle (Leerzeichen) in einen unterstrich ersetzt werden. Und schon ist das Logfile FHEM kompatibel.

Gruß Gerd
Titel: Antw:PiUSV Monitor LOG neues Format - wie in FHEM auswerten?
Beitrag von: Kermit20 am 16 August 2016, 13:26:07
Hi,

hast du mittlerweile ein Lösung gefunden ?