NEWS
Manchmal hohe CPU Last
-
Hallo, ich habe manchmal eine sehr hohe CPU-Last >100%.
Das Protokoll zeigt keine Fehler auf. Wie kann ich herausfinden, was die hohe CPU-Last erzeugt?
Es gibt sicher bei Putty befehle, womit ich das schnell herausfinden kann. Kann mir jemand verraten, wie diese Eingabe lauten müsste und worauf ich achten muss?
Danke -
@tourer4778 sagte in Manchmal hohe CPU Last:
Es gibt sicher bei Putty befehle, womit ich das schnell herausfinden kann.
top
-
@homoran
Danke, natürlich ist seit dem nicht noch einmal passiert ... -
@homoran
Es passiert immer noch ab und zu, meist, wenn ich nicht zu Hause bin.
Mit top konnte ich aber mal sehen, das javascript.0 mehr CPU-Last hatte, wie sonst.
Gibt es eine Möglichkeit, den Fehler mehr einzugrenzen? Ich vermute mal, das ich irgendwo einen Fehler in einem Script habe, einen Loop oder wie auch immer man das nennt. -
@tourer4778 sagte in Manchmal hohe CPU Last:
Gibt es eine Möglichkeit, den Fehler mehr einzugrenzen?
nicht genau .. aber der javascript adapter ist so programmiert das es bei einer abnormalität das script abschaltet.. was gerade hoche io verursacht
-
@arteck
Und das wird er dann vermutlich auch in Log schreiben, aber da finde ich nichts.Was mir auch auffällt, seit dem ich VIS-2 nutze und diese gerade nutze, steigt die CPU-Last auch bis meist 100% kurzfristig.
Wenn die CPU Last ansteigt, habe ich meist probleme mit Timer.
-
@tourer4778 wo läuft der iobroker.. ??
-
@arteck
PI5Ich muss dazu sagen, das ich Timer und den DP Uptime nutze, um festzustellen, ob ein Gerät noch Online ist, da die mitgelieferten DP Alive für mich meist zu träge waren. Wenn Uptime auf 30 Sec. gestellt ist und nach 65 Sec keine Aktualisierung war, ist das Gerät für mich Offline. Der Sonoff Adapter wechselt manchmal erst nach Minuten den Status. Diese Zeiten kommen dann durcheinander und ie Geräte gehen dann Offline, obwohl sie über Wlan noch zu erreichen sind.
-
Was mich auch wundert, das auf der Javaskript.2 auch so eine hohe Auslastung ist, obwohl dort kein Skript läuft.
Bei mir wird nur 0 & 1 verwendet -
a) Warum deaktivierst du die Instanz nicht?
b) Wo siehst du wie hoch die CPU-Last der Instanz ist?
-
@dr-bakterius sagte in Manchmal hohe CPU Last:
a) Warum deaktivierst du die Instanz nicht?
Weil ich Sie vergessen habe zu deaktivieren bzw. mir nicht mehr bewust war, das ich dort kein Skript mehr laufen habe.
b) Wo siehst du wie hoch die CPU-Last der Instanz ist?
Ich hatte mal gelesen, das die Werte hinten die Vorgänge pro 15 sec sind, was natürlich das auf die Last der CPU geht.
-
@tourer4778 sagte in Manchmal hohe CPU Last:
Was mich auch wundert, das auf der Javaskript.2 auch so eine hohe Auslastung ist, obwohl dort kein Skript läuft.
Bei mir wird nur 0 & 1 verwendetweil alle javscript adapter in einem prozess laufen.. ist so technisch..
und ja da ist was faul 6k ist zu groß´..eigebtlich alles was über 3k geht zur laufzeit..
bei start gehen die ab und an mal drüber aber dann sollte sich das unter 2k einpendeln -
@arteck
Ich habe die Werte mal beobachtet und ich denke, dass ich eine Ursache eingrenzen konnte, aber nicht ganz nachvollziehen kann.
Mit Operating-Hours nehme ich die Betriebsstunden meiner Heizung auf.
Ich unterscheide Heizung, Warmwasser, Tag, Woche, Monat usw. Es kommen also ein paar Counter zusammen.
Wenn diese Counter starten, steigt meine CPU-Last um ca. 20%.
Das Skript ist aber eigentlich ganz einfach aufgebaut und sollte keine große CPU-Last erzeugen. Operating-Hours selbst steigt um ca. 2% in der CPU-Last. Übersehe ich was, ist das Skript falsch? Es wird doch nur einmal beim Start getriggert und einmal beim Beenden.
Ich habe hier nur einen Teil dargestellt.
-
@tourer4778 sagte in Manchmal hohe CPU Last:
Übersehe ich was, ist das Skript falsch? ... Ich habe hier nur einen Teil dargestellt.
Daher kann man das auch schlecht beurteilen. Du zeigts halt nur einen (möglicherweise unkritischen) Teil.
Und den könnte man (nur so am Rande) auch noch etwas vereinfachen:
-
@codierknecht
Danke, werde ich mir genauer ansehen.
Die Anderen Netzwerke sehen genau so aus, mit anderen Countern und anderen DP zur Auslösung.
Es sind 12 Counter in diesem Skript. -
- Wozu laufen da überhaupt mehrere JS-Instanzen?
- Loggst Du in eine Datenbank? Wo läuft die?
- Wenn die Counter aktiv sind: Wie sieht das Loggen in die DB dann aus?
-
@codierknecht
Zu 1. Ich habe zwei J.Instanzen. Eine überwacht nur die Hauptinstanz.
Zu 2. Die Daten werden am ende des Tages, Woche, Monat in History abgelegt mit alles Betriebsstunden.
Zu 3. Verstehe nicht, was du meinst. Die Counter laufen immer dann mit bzw. laufen weiter, wenn die Heizung läuft.
Am ende des Tages / Woche / Monat werden die Counterwerte/ Betriebsstunden in History einzelnd abgelegt. Die Counter laufen nur, wenn auch die Heizung läuft, bzw Brauchwasser erwärmt wird. -
@tourer4778 sagte in Manchmal hohe CPU Last:
Zu 3. Verstehe nicht, was du meinst
Da die Antwort zu
Loggst Du in eine Datenbank? Wo läuft die?
"History" lautet: Zeige doch mal die Stellen im Script, die für das Schreiben der Werte zuständig sind.
Wann und wie wird das gemacht?Wenn diese Counter starten, steigt meine CPU-Last um ca. 20%.
Das Starten der Counter allein kann wohl kaum zu erhöhter Last führen. Da werden ja lediglich ein paar Datenpunkte beschrieben. Interessanter dürfte der Teil der Scripte sein, den zu nicht zeigst.
-
@codierknecht
wie gesagt, das wird am ende des tages gemacht und ist in dem Moment nicht Aktiv.
Den Teil, der in History abgelegt wird, schließe ich aus, da ich diesen auch deaktiviert habe.
-
@tourer4778 wenn ich das richtig sehe greifst du mit drei Skripten zeitgleich mehrfach auf die selben DP zu.
was steuerst du da für Geräte?