[gelöst] Zeigt sysmon die aktuelle Last der CPU an?

Begonnen von matzke, 24 März 2022, 20:45:09

Vorheriges Thema - Nächstes Thema

matzke

Hallo,

zeigt sysmon die aktuelle Last der CPU an?

Wenn ja, welcher Wert ist es? Ich könnte mir vorstellen, stat_cpu. Aber dort stehen ja mehrere Werte....

Tausend Dank

sash.sc

Bei mir sieht die CPU Last so aus.

stat_cpu_percent 13.50 0.00 16.94 69.37 0.03 0.00 0.16

Du musst alle Werte addieren, ausser den hohen Wert mit 69.37, dann kommst du auf deine Gesamtauslastung.

Ich suche noch einen Weg, dass ganze in ein Reading zu packen, spriche alle Werte im Reading addieren, ausser diesen 1 wert.

Gruß
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Wernieman

wie kommst Du darauf, die 69,37 nicht mitzuzählen?
- 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

wenn du alle addierst, bekommst du 100.  ;)
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

matzke

Zitat von: sash.sc am 27 März 2022, 15:28:17
Du musst alle Werte addieren, ausser den hohen Wert mit 69.37, dann kommst du auf deine Gesamtauslastung.

Wie geht das als userReading? Ich meine mehrere ReadingNums addieren, kein Problem. Aber addieren eines ReadingVals mit mehreren Werten und dann noch einen auslassen?
Oder kann man das nur mit Perl lösen? Ich meine ein "doif -> perl ausrechnen -> reading schreiben" erscheint mir aufwenden.

vg

Wernieman

Die Frage ist, ob das Maximum wirklich 100% ist .... Unix rechnet anders als Windows.

Normalerweise ist 100% bei Unix 100% eine CPU. Bei z.B: 2 Kernen kannst Du also 2*100% bekommen (analog bei X Kernen X*100 im Maximum) ....

Aber für eine genaure Analyse kenne ich sysmon zu wenig und woher er diese Werte nimmt
- 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

sash.sc

#6
Zitat von: Wernieman am 27 März 2022, 17:32:37
wie kommst Du darauf, die 69,37 nicht mitzuzählen?

Hallo Werniemann.

Ich habe mir mal das Plot dazu angesehen, wo die CPU Last grafisch dargestellt wird.
Dort werden alle Werte ausser dieser eine hohe Wert addiert, um die Gesamtauslastung darzustellen.

Oder liege ich da falsch !

Gruß
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

alanblack

Zitat von: matzke am 24 März 2022, 20:45:09
zeigt sysmon die aktuelle Last der CPU an?

Indirekt: CPU-Last = 100-(2. Teil von ReadingsVal("idletime"))

Im Reading "idletime" stehen die Sekunden seit dem letzen Reboot, in denen die CPU nichts zu tun hatte, und daneben noch der prozentuale Anteil davon an der Gesamtlaufzeit.

Grüße
FHEM 6.0 auf raspi3&ODROID XU4 mit HMLAN und HM-MOD-RPI-PCB, LaCrosse via JeeLink, COC868 und CUL433, Xiaomi Aqara+div. Zigbee via deCONZ, Dooya via SIGNALDuino, ZWave mit Danalock
Jeder Witz kann ein Einzeiler sein mit genügend Semikolons

matzke

ZitatIch suche noch einen Weg, dass ganze in ein Reading zu packen, spriche alle Werte im Reading addieren, ausser diesen 1 wert.

Hallo,

mit Perl Code:

stat_cpu_percent_last {
my $stringLast = ReadingsVal("sysmon","stat_cpu_percent","");
my @arrLast = split(/ /, $stringLast);
$stringLast = round(100 - $arrLast[3], 2);
}


vg