Anzeige der "FHEM-Uptime"

Begonnen von maeb3, 28 Februar 2013, 09:17:14

Vorheriges Thema - Nächstes Thema

maeb3

Hallo,

ich fände es prima, wenn man irgendwo einen Parameter hätte, aus dem man die Uptime oder die letzte Start-/Reboot-Zeit von FHEM (nicht von der Fritzbox!) ablesen könnte. Gerade in den Experimentierphasen, in den sich viele von uns noch befinden, würde das sehr helfen (z.B. um einen unplanmäßigen Neustart schnell zu erkennen).

Optimalerweise ließe sich die Uptime dann auch noch irgendwo einblenden (z.B. unterhalb des FHEM-Menüs).

Grüße,
 Matthias

Dietmar63

kannst du dir leicht selbst bauen:

Immer wenn die fhem.cfg verarbeitet wird schreibst du per at eine dummy-Variable, die aus time() per heraus gefüllt wird.
Natürlich nur dann wenn die dummyVariable noch nicht gefüllt ist. Wenn du willst kannst du dir gleich noch eine email schreiben - sollte nicht so schwer sein.


define StartUp dummy
define StartUpTimeSet       at +00:00:00  {fhem("set StartUp " . strftime("%H:%M:%S",localtime(time())))}
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

besser:


define StartUp dummy
define StartUpTimeSet       at +00:00:05  {fhem("set StartUp " . strftime("%d.%m.%Y %H:%M",localtime(time())));; mail('v.n@@web.de','FHEM','restart done!')}



(siehe Anhang / see attachement)


brauchbar? mail musst du eventuell anpassen, oder fortlassen.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

justme1968

oder mit notify an global:INITIALIZED hängen:define StartUp dummy
define StartUpTimeSet notify global:INITIALIZED{fhem("set StartUp " . strftime("%H:%M:%S",localtime(time())))}                                      
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

oder mit notify an global:INITIALIZED hängen:define StartUp dummy
define setStartUpTime notify global:INITIALIZED{fhem("set StartUp " . strftime("%H:%M:%S",localtime(time())))}                                      
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Dietmar63

Wieder etwas gelernt - global:INITIALIZED kannte ich noch nicht.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

punker

Hi,
habe auch versucht euer Beispiel einzubauen, aber es kommt nur folgendes:

(http://www7.pic-upload.de/28.02.13/ihbs1xgserux.jpg)

was mach ich falsch?
LG

Dieter

The truth is out there!

Dietmar63

ich könnte mir vorstellen, dass ein Leerzeichen zwischen D{ fehlt:


INITIALIZED{fhem("
so
INITIALIZED {fhem("
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

justme1968

ja. mein fehler. hab beim posten nicht aufgepasst.

da gehört ein leerzeichen rein.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

punker

Danke euch für die Hilfe, aber das fehlende Leerzeichen hatte ich schon vorher selber entdeckt!
Läuft aber deswegen immer noch nicht - Ergebnis ist dasselbe!
LG

Dieter

The truth is out there!

Reinerlein

Hi Dietmar,

du könntest es so schreiben:define StartUp dummy
define setStartUpTime notify global:INITIALIZED {readingsSingleUpdate($main::defs{StartUp}, 'state', TimeNow(), 1)}
Damit erhältst du ein Device, dessen State einmalig auf die aktuelle Uhrzeit gesetzt wird.

Wenn du auch noch die Uptime brauchst, dann musst du mit dieser Zeit rechnen. Da hast du aber das Problem, dass du ein Event brauchst.
Da könntest du jetzt sowas machen wie ein at alle 60sekunden oder so... Dann wäre deine Uptime-Anzeige Minutengenau :-)

Grüße Reinerlein

maeb3

Hallo zusammen,

funktioniert prima bei mir.

Danke,
 Matthias