Hallo,
habe nun noch einmal am Modul gearbeitet und es zunächst einmal modularisiert und umbenannt.
Umbennung 99_RpiUtils.pm nach SrvUtils.pm, da das Modul hoffentlich für fhem-Server universel einsetzbar werden soll.
Für die Ansicht im WebFrontend folgendes definieren:
define SrvValues weblink htmlCode {ShowSrvValues()}
attr SrvValues room RaspBerry
Um Log-Files zu schreiben können folgende Routinen aufgerufen werden:
Temperatur loggen:
define RPiTemp dummy
attr RPiTemp comment RaspberryPi Device Sensor
attr RPiTemp room hidden
define FileLog_RPiTemp FileLog /var/log/fhem/rpi_temp-%Y-%m.log RPiTemp
attr FileLog_RPiTemp logtype fht:Temp,text
attr FileLog_RPiTemp room hidden
define weblink_RPiTemp weblink fileplot FileLog_RPiTemp:temp4:CURRENT
attr weblink_RPiTemp label "RaspberryPi Temperatur: Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr weblink_RPiTemp room System
define at_RPiTemp at +*00:03 { fhem "trigger RPiTemp ".SrvTemp() }
attr at_RPiTemp room hidden
Ausgabe LogFile:
2012-10-05_22:09:42 RPiTemp T: 49.77 in Grad Celsius
#------------------------------------------------------------------------------------------------------------------------------------------------------
RAM loggen:
define RPiRam dummy
attr RPiRam comment RaspberryPi Device Sensor
attr RPiRam room hidden
define FileLog_RPiRam FileLog /var/log/fhem/rpi_ram-%Y-%m.log RPiRam
attr FileLog_RPiRam logtype text
attr FileLog_RPiRam room hidden
define at_RPiRam at +*00:03 { fhem "trigger RPiRam ".SrvRamSwap("R") }
attr at_RPiRam room hidden
Ausgabe LogFile:
2012-10-05_22:31:19 RPiSwap S: 0.00 F: 102.396 U: 0 T: 102.396 MB
S: = Swap; F: = Free; U: = Used; T: = Total alles in MByte
#------------------------------------------------------------------------------------------------------------------------------------------------------
SWAP loggen:
define RPiSwap dummy
attr RPiSwap comment RaspberryPi Device Sensor
attr RPiSwap room hidden
define FileLog_RPiSwap FileLog /var/log/fhem/rpi_swap-%Y-%m.log RPiSwap
attr FileLog_RPiSwap logtype text
attr FileLog_RPiSwap room hidden
define at_RPiSwap at +*00:03 { fhem "trigger RPiSwap ".SrvRamSwap("S") }
attr at_RPiSwap room hidden
Ausgabe LogFile:
2012-10-05_22:34:15 RPiRam R: 35.37 F: 122.19 U: 66.88 T: 189.07
S: = Swap; F: = Free; U: = Used; T: = Total alles in MByte
#------------------------------------------------------------------------------------------------------------------------------------------------------
Filesystemspeicher loggen:
define RPiFS dummy
attr RPiFS comment RaspberryPi Device Sensor
attr RPiFS room hidden
define FileLog_RPiFS FileLog /var/log/fhem/rpi_fs-%Y-%m.log RPiFS
attr FileLog_RPiFS logtype text
attr FileLog_RPiFS room hidden
define at_RPiFS at +*00:03 { fhem "trigger RPiFS ".SrvFileSystem() }
attr at_RPiFS room hidden
Ausgabe LogFile:
2012-10-05_22:40:16 RPiFS G: 7459.46 B: 1564.11 V: 5516.52
G: = Größe; B: = Benutzt; V: = Verfügbar alles in MByte
#------------------------------------------------------------------------------------------------------------------------------------------------------
Netzwerktraffik loggen:
define RPiNetwork dummy
attr RPiNetwork comment RaspberryPi Device Sensor
attr RPiNetwork room hidden
define FileLog_RPiNetwork FileLog /var/log/fhem/rpi_lan-%Y-%m.log RPiNetwork
attr FileLog_RPiNetwork logtype text
attr FileLog_RPiNetwork room hidden
define at_RPiNetwork at +*00:03 { fhem "trigger RPiNetwork ".SrvNetwork() }
attr at_RPiNetwork room hidden
Ausgabe LogFile:
2012-10-05_22:40:16 RPiNetwork R: 1.35 S: 2.34 T: 3.69
R: = Received; S: = Send; T: = Total alles in MByte
#------------------------------------------------------------------------------------------------------------------------------------------------------
Herzliche Grüße
Jörg