[gelöst] FHEM sleep: Überwachung auf > 0 integrieren

Begonnen von Schlimbo, 06 Januar 2019, 00:55:57

Vorheriges Thema - Nächstes Thema

Schlimbo

Hallo FHEM Developer,
wäre es möglich in den FHEM sleep Befehl noch eine Überwachung der sleep Zeit einzubauen?
Hatte versehentlich ein "sleep ²" anstatt "sleep 2" in einer myUtils Routine, was mir dann eine Endlosschleife verursacht hat.

Vermute dass die "²" keine gültige Zahl ist und dann als 0 interpretiert würde. Fände desshalb eine Überwachung auf > 0 sinnvoll.

Gruß Schlimbo

Otto123

Hi Schlimbo,

die Überwachung ist drin, sleep ² ergibt ->
Cannot interpret ² as secondsDu musst sie aber irgendwie beachten.  :D

Der Blick des Laien in die fhem.pl  ;)
  return "Argument missing" if(!defined($sec));
  return "Cannot interpret $sec as seconds" if($sec !~ m/^[0-9\.]+$/);
  return "Last parameter must be quiet" if($quiet && $quiet ne "quiet");


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Schlimbo

#2
Hallo Otto,
danke für die Klarstellung.
Okay, dann hat die falsche Zeit das "sleep" also komplett deaktiviert und der Befehl, der eigentlich zeitverzögert ausgeführt werden sollte würde sofort ausgeführt.
Dann sollte ich bei solchen "Loop-gefährdenden" Sub's das nächste mal besonders aufpassen:

sub NeatoPS3($$$){
....
fhem ('sleep ² NeatoPS3_2 quiet; {NeatoPS3("'.$REMOTE.'","'.$BOTVAC.'","")}');


Erschreckend finde ich es trotzdem, das ein so kleine Fehler einen kompletten INTEL NUC (mit FHEM im Docker Container) lahmlegt, über SSH war er nicht mehr zu erreichen, nur durch Steckerziehen könnte ich ihn wieder reanimieren.

Weiß zufällig jemand ob es in Docker eine Einstellung gibt, um zu verhindern, dass ein Container das Host System lahmlegt?

Edit: Wer Googlen kann ist klar im Vorteil ;)
https://docs.docker.com/config/containers/resource_constraints/#memory

Gruß Schlimbo