Plötzlich dauerhaft erhöhte Systemauslastung

Begonnen von Marlen, 16 Juli 2018, 20:34:27

Vorheriges Thema - Nächstes Thema

Marlen

Hallo,

hab seit Tagen plötzlich eine erhöhte Systemauslastung.
Internals:
   DEF        120 100
   HAS_Net::SNMP 0
   HAS_Sys::Statistics 1
   INTERVAL   120
   NAME       BBxM
   NR         114
   STATE      0.21 0.30 0.46
   TYPE       SYSSTAT
   interval_fs


Wenn ich das Perl anschaue, schaut das ganz garnicht mal so schlimm aus!
ca. so:
Tasks: 138 total,   1 running, 137 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.6 us,  1.2 sy,  0.0 ni, 96.4 id,  1.8 wa,  0.0 hi,  0.1 si,  0.0 st
KiB Mem:    945512 total,   454312 used,   491200 free,    49652 buffers
KiB Swap:   102396 total,        0 used,   102396 free.   254824 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
1001 fhem      20   0  107844  96124  13700 S   3.6 10.2  57:53.78 perl
11414 fhem      20   0  107844  84724   2300 S   1.3  9.0   0:00.04 perl
11409 pi        20   0    5248   2600   2148 R   1.0  0.3   0:00.13 top
    7 root      20   0       0      0      0 S   0.3  0.0   0:14.88 rcu_sched
1035 pi        20   0   11548   3372   2752 S   0.3  0.4   0:00.74 sshd
11415 fhem      20   0    2084    416    336 S   0.3  0.0   0:00.01 ping
    1 root      20   0   22832   3896   2728 S   0.0  0.4   0:05.01 systemd
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.03 kthreadd


Auch ein Neustart bring nicht.
Hab schon versucht, das mit Apptime oder Freezmon zu analysieren, aber weder etwas auffälliges bei Apptime, noch eine Meldung von Freezmon.

Wie kann ich weiter was herausbekommen?

LG
  Marlen

Marlen

Hatte noch keiner so ein Problem?

Gesendet von meinem Aquaris U Plus mit Tapatalk


Wernieman

1001 fhem      20   0  107844  96124  13700 S   3.6 10.2  57:53.78 perl
11414 fhem      20   0  107844  84724   2300 S   1.3  9.0   0:00.04 perl
11409 pi        20   0    5248   2600   2148 R   1.0  0.3   0:00.13 top


top braucht fas soviel wie die anderen perl-Prozesse ... also kein Problem ...

Oder was meinst Du mit "Systemauslastung"?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Marlen

Ich meine im Modul SYSSTAT:

NAME       BBxM
   NR         114
   STATE      0.21 0.30 0.46
   TYPE       SYSSTAT


Das ist plötzlich angestiegen!

Passt meiner Meinung halt nicht zusammen!

Und was bedeutet:
Zitattop braucht fas soviel wie die anderen perl-Prozesse ... also kein Problem ...

Was ist top?

LG
  Marlen

CoolTux

Zitat von: Marlen am 18 Juli 2018, 12:13:39
Ich meine im Modul SYSSTAT:

NAME       BBxM
   NR         114
   STATE      0.21 0.30 0.46
   TYPE       SYSSTAT


Das ist plötzlich angestiegen!


Was ist denn da angestiegen
0.21 0.30 0.46

Das sieht doch gut aus wenn man bedenkt das es bis auf 4.0 steigen kann und dann erst 100% erreicht sind. Für mich sieht das alles voll ok aus. Wie waren denn die Werte davor? Und Du weißt hoffentlich auch was die 3 Werte bedeuten und welche Zeitabschnitt sie beschreiben.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

Du solltest Wissen was "TOP" ist.. schließlich hast Du es gestartet ....

Eine Erklärung für load:
https://de.wikipedia.org/wiki/Load

Was bei Dir "gestiegen" ist, ist die load, d.h. auf IO-Wartende Prozesse. Wenn jetzt also ein Prozess länger auf IO-Warten (z.B: Zugriff auf Websides), dann steigt die Load.

Also Load <> Systemauslastung.

Persönliche Erfahrung:
"Bestleistung": Load von 10.000 und der Server war noch ansprechbar (Es hatte sich eine externe DB verabschiedet und die php-Prozesse warteten....)
"Negativleistung": Load von 4 (letzte Info vom Monitoring) und der Server war tot. Obiger DB-Server (DB-Server mögen keine hohe Load)

Btw:
Eine Load von unter 1 ist beinahe nicht zu Erwähnen ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

CoolTux

Zitat von: Wernieman am 18 Juli 2018, 13:25:15
Du solltest Wissen was "TOP" ist.. schließlich hast Du es gestartet ....

Eine Erklärung für load:
https://de.wikipedia.org/wiki/Load

Was bei Dir "gestiegen" ist, ist die load, d.h. auf IO-Wartende Prozesse. Wenn jetzt also ein Prozess länger auf IO-Warten (z.B: Zugriff auf Websides), dann steigt die Load.

Also Load <> Systemauslastung.

Persönliche Erfahrung:
"Bestleistung": Load von 10.000 und der Server war noch ansprechbar (Es hatte sich eine externe DB verabschiedet und die php-Prozesse warteten....)
"Negativleistung": Load von 4 (letzte Info vom Monitoring) und der Server war tot. Obiger DB-Server (DB-Server mögen keine hohe Load)

Btw:
Eine Load von unter 1 ist beinahe nicht zu Erwähnen ....

Eigentlich ist es auf Unix Systemen der  Load Average über die letzte/n 1 Minute, 5 Minuten, 15 Minuten.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

Stimmt .. wollte es aber nur etwas "vereinfacht" ausdrücken .. siehe Wikipedia-Link
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Marlen

Zitatwenn man bedenkt das es bis auf 4.0 steigen kann und dann erst 100% erreicht

Dachte wenn
showpercent 1
....wird alles in Prozent angezeigt und das dann 1.00 100% sind!

ZitatWie waren denn die Werte davor?
Naja, der 5 Minuten Wett war höchsens so 0.03 und der 15 Min.-Wert eigentlich immer 0.

ZitatWenn jetzt also ein Prozess länger auf IO-Warten (z.B: Zugriff auf Websides), dann steigt die Load.
Was kann das sein? HTTPMOD abfragen oder z.B. auch DOIF?

LG
  Marlen


CoolTux

OK sorry diesmal habe ich mich falsch ausgedrückt.
1.00 sind auch 100% . Hier wird aber pro Kern gerechnet. Du hast 4 Kerne, daher kann die Gesamtauslastung 400% oder aber eben 4.00 betragen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marlen

Aha....

und wenn die Werte dauerhaft so um die 0.30 sind macht nix????

CoolTux

Nee rein gar nichts. Kann mir eher Deine 0.00 nicht vorstellen. 0.3 ist mehr wie in Ordnung.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marlen

Was hast du denn so für eine CPU-Temperatur?
Ich hab so um die 42°

CoolTux

Du kannst Dir ja Gedanken machen  :)

cpu_temp         49.77
cpu_temp_avg     49.9
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marlen

Ohhhhh...... da würd ich mir gedanken machen, ab 45 geht der Lüfter bei mir an.
Wie bekommst du cpu_temp_avg?
Bei mir heißt das einfach temperature


CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

?? Wie will man eine Load in % berechnen??
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

CoolTux

http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages

1.00 oder 100% bedeutet alles läuft ohne Engpässe ab 101% oder 1.01 haben wir eine Warteschlange, es kommt zu Verzögerungen bei der Abarbeitung.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

Das ist aber auch etwas Pauschal gesagt: " 1.01 haben wir eine Warteschlange, es kommt zu Verzögerungen bei der Abarbeitung."

Siehe Beispiel oben ....

(Ich weiß, das Du es abschätzen kannst, nur mit solchen pauschalen Aussagen bei "Normalusern" habe ich in meinem bisherigen Berufsleben immer Kämpfen müssen ...)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

CoolTux

Zitat von: Wernieman am 19 Juli 2018, 09:48:15
Das ist aber auch etwas Pauschal gesagt: " 1.01 haben wir eine Warteschlange, es kommt zu Verzögerungen bei der Abarbeitung."

Siehe Beispiel oben ....

(Ich weiß, das Du es abschätzen kannst, nur mit solchen pauschalen Aussagen bei "Normalusern" habe ich in meinem bisherigen Berufsleben immer Kämpfen müssen ...)

Verstehe ich. Ich hatte da auch eher versucht das ganze Bildlich zu veranschaulichen. Hoffe ja nicht das die Dame gleich auf schreit wenn es mal 1.01 werden  ;D
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

P.S: Muß man dann die "%" Überhaupt anbieten? Ich finde die Ursprüngliche Aussage: "0.3 Prozesse in den letzten 5 Minuten" sinnvoller .. ist aber auch meine persönliche Meinung ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Marlen

ZitatHoffe ja nicht das die Dame gleich auf schreit wenn es mal 1.01 werden

Also gut, verstanden. Alles unter 1.00 ist gut. Da bin ich ja noch weit entfernt!

Zumal heute Nacht mein Ø15 Min. Load plötzlich wieder auf 0.01 gefallen is.

Demnach ist wohl Load der falsche Indikator um eine Systemüberlastung mitzubekommen.
Wie macht ihr das?

LG
  Marlen

CoolTux

Wenn meine Freundin schreit warum das eine oder andere wieder nicht geht  ;D
Ansonsten mache ich da gar nichts.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Marlen

Und du hast da keine Angst um dein Raspberry?

Ich hab noch ein Notify auf die Temperatur. Über 45 geht ein Lüfter an.
Wäre ja auch ein Indikator das das System mehr arbeiten muss....

CoolTux

Nein gar nicht. Der hängt in der Zwischendecke. Das seit 2015 und ich hätte nie Probleme wegen Hitze oder so.
Ja ich hatte auch schon ein blockieren weil Perl Amok gelaufen ist. Aber das lag immer an irgend ein Modul was Probleme machte. Sowas bemerkt man aber schnell wenn man eine ausgeprägte Schaltung hat.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

Man kann ein System auch "totüberwachen".
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Frank_Huber

btw: für den RPI3 z.B. ist die max CPU Temp 85 Grad Celsius.

über 85 Grad fängt er an die CPU zu drosseln bis die temp abfällt.

Marlen

Also, besser das System garnicht überwachen?

Gesendet von meinem Aquaris U Plus mit Tapatalk


CoolTux

Nur das was in Deinen Augen Sinn macht und nützlich ist. SYSMON als Modul kann man ja nehmen zur Überwachung, nur solltest Du Dir nicht um jeden Mist einen Kopf machen (typisch Frau fällt mir da gerade ein  ;D )
Ich überwache aktiv zum Beispiel lediglich den freien Festplattenplatz und Updates.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wernieman

Es gibt beim "Monitoring" immer 2 Überleungen:
a)Was muß/sollte sinvoll geloggt werden, z.B. auch für die Hostorie
b) was für Sinvolle Warnungen Gibt es
c) Was für Sinvolle automatische raktionen gibt es

z.B. mal wegen c)
Du Überwachst Die CPU-Temperatur (Loggst Du auch?) und schaltest bei 45 einen Zusatzlüfter. Wie geschrieben ist die CPU für 85°C designt (glaube jetzt mal Frank_Huber, mir scheint es aber zu hoch)
Also eigentlich ist 45° schon seeeehr früh. Sinnvoll wäre bei solcher Überlegung dann ob nicht 60° reichen würde. Du misst zwar alle (5?) Minuten, aber in der Zeit schafft der PI nicht von 60° auf 80°.

Allerdings ... gibt nicht nur die CPU-Temperatur ...

Du verstehst, in welche Richtung die Gedanken gehen?

Mann sollte  soch also bei jedem Punkt immer Überlegen, was denn sinnvoll ist. Auch Monitorring "kostet" Leistung (und Zeit des Admins)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Frank_Huber

Zitat von: Wernieman am 20 Juli 2018, 09:22:48Wie geschrieben ist die CPU für 85°C designt (glaube jetzt mal Frank_Huber, mir scheint es aber zu hoch)

Psssst, Quelle: https://www.raspberrypi.org/help/faqs/#performanceOperatingTemperature
oder auch diverse Forenbeiträge auf raspberrypi.org. :-)

Wernieman

Danke für den Hinweis:

Ich vergaß, das der Chip aus dem SpartPhone Bereich kommt ... und die können (z.B. im Auto) gerne über 70° erreichen ...

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

AxelSchweiss

Schau mal ob du irgendwelche defines/Module hast die auf Netztwerkresourcen zugreifen die nicht mehr vorhanden sind.

Ich habe ein ähnliches Verhalten wenn bei mir das I-Net wegfliegt (kommt zu Glück selten vor).
Dann blockieren diverse Module mit Internetzugriff (welche das genau sind weis ich auch noch nicht) und die CPU , genauer der Prozess von perl, steigt auf 100 % (nicht Load).
Das ganze FHEM wird dann extreeeeeem trääääääge. Eigentlich nicht mehr benutzbar. Beenden geht dann nur noch via SIGKILL.

Der Plan ist diese defines zu disablen wenn das I-Net ausfällt.
Zumindest solange bis der I-Net Zugriff wieder Ok ist.

CoolTux

Zitat von: AxelSchweiss am 20 Juli 2018, 21:36:40
Schau mal ob du irgendwelche defines/Module hast die auf Netztwerkresourcen zugreifen die nicht mehr vorhanden sind.

Ich habe ein ähnliches Verhalten wenn bei mir das I-Net wegfliegt (kommt zu Glück selten vor).
Dann blockieren diverse Module mit Internetzugriff (welche das genau sind weis ich auch noch nicht) und die CPU , genauer der Prozess von perl, steigt auf 100 % (nicht Load).
Das ganze FHEM wird dann extreeeeeem trääääääge. Eigentlich nicht mehr benutzbar. Beenden geht dann nur noch via SIGKILL.

Der Plan ist diese defines zu disablen wenn das I-Net ausfällt.
Zumindest solange bis der I-Net Zugriff wieder Ok ist.

Dann solltest du mal das globale Attrbut dnsserver auf einen internen Server setzen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

AxelSchweiss

Zitat von: CoolTux am 20 Juli 2018, 21:40:43
Dann solltest du mal das globale Attrbut dnsserver auf einen internen Server setzen.
Ich habe schon einen internen DNS (BIND) sowohl für mein Netz als auch als caching-dns am laufen.
Es scheint auch nicht bei allen Modulen zu blockieren.
Welche betroffen sind muss ich noch austesten ... und das dauert :-)

CoolTux

Zitat von: AxelSchweiss am 21 Juli 2018, 11:15:00
Ich habe schon einen internen DNS (BIND) sowohl für mein Netz als auch als caching-dns am laufen.
Es scheint auch nicht bei allen Modulen zu blockieren.
Welche betroffen sind muss ich noch austesten ... und das dauert :-)

Das war nicht das was ich gesagt habe.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Christoph Morrison

Zitat von: Marlen am 20 Juli 2018, 08:56:04
Also, besser das System garnicht überwachen?

Wer viel misst, misst Mist. Wer gar nichts misst, kann nichts lenken. Du musst dir halt Gedanken machen, was für deinen Fall relevant ist: Ich lasse mir - für meine Raspberries - die Systemlast ausgeben (ohne Notify) und habe einen Watchdog auf CPU-Temperatur und Disk-Space, der mir im Grenzfall eine Nachricht schickt. Der erste Werte ist halt einer, den man interpretieren können muss, die letzten beiden sind harte Werte, die einen kritischen Zustand bedeuten und Aktion erfordern. Andere Sachen fand ich nicht so interessant.

AxelSchweiss

Zitat von: CoolTux am 21 Juli 2018, 11:23:28
Das war nicht das was ich gesagt habe.
Wenn ich die Commandref richtig gelesen habe soll damit "gethostbyname" umgangen werden da es angeblich blocking ist.
Da mein DNS (caching) ja immer eine Antwort liefert sollte das also nicht blockieren.
Aber wer weiss ... ich versuchs mal.
Vielen Dank für den Hinweis.


r00t2

#38
Zitat von: CoolTux am 20 Juli 2018, 08:59:56
Nur das was in Deinen Augen Sinn macht und nützlich ist. SYSMON als Modul kann man ja nehmen zur Überwachung, nur solltest Du Dir nicht um jeden Mist einen Kopf machen ...
Sehe und praktiziere ich genauso.

Ich lasse mir zwar den load, Temp und RAM, sowie die freie Plattenkapazität grafisch anzeigen, schaue jedoch nur alle paar Tage mal rein, wenn es mich interessiert (z. B. wenn's mal besonders warm draußen oder im Zimmer ist).

Aber selbst bei großer Hitze draußen und drinnen > 22 °C läuft mein RPi 2 im Schrank nicht über 50 °C... Von daher: Alles im grünen Bereich und kein Grund zur Sorge bzw. sich unnötig verrückt zu machen.
Ich denke ab > 60 °C bekomm' ich ne Mail gesendet, weil dann vermutlich doch was nicht passt. Aber das war noch nie der Fall.

Apropos "zu viel überwachen": Im Urlaub fahre ich FHEM herunter, weil ich nicht wissen möchte, ob meine Bude gerade abfackelt (oder nur eine Fehlfunktion vorliegt) während ich am Strand liege und eh nichts unternehmen kann.  ;D
FHEM 6.0 (Raspberry Pi 2 B | Raspberry Pi OS Lite | Perl 5.28.1 | UZB Z-WAVE.Me | Hue Bridge V1 | SIGNALDuino 433 MHz | FritzBox | Kodi | Pioneer AVR | MQTT | Node-RED | Diverse Google Dienste)