NEWS
CPU Temperatur mittels SSH auslesen
-
Hallo,
ich möchte gerne die CPU Temperatur meines Proxmox Servers auslesen. Dafür habe ich zurzeit folgendes Script:var SSH = require('simple-ssh'); var ssh = new SSH({ host: '<ZIEL-IP>', user: 'XXXXXX', pass: 'xxxxxxxxx' }); ssh.exec('sensors', {out: function(stdout) {console.log(stdout);},}).start();
Das funktioniert auch sehr gut, leider bekomme ich damit aber alle Sensor Daten.
Gebe ich auf der Proxmox Konsole folgendes ein:sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'
erhalte ich den gewünschten Wert.
Füge ich diesen Befehl aber statt 'sensors' in meine Funktion ein, erhalte ich eine Fehlermeldung:SyntaxError: missing ) after argument list
wo hört denn da jetzt noch die Klammer hin? Wenn überhaupt...
Gruß
Kymchy -
Ich mache das mit dem linux-control Adapter.
Der Befehl lautet:
sensors | grep 'Package id 0:' | awk '{print $4}' | cut -c2-3
-
@meister-mopper ok, danke! Ich habe das Parsing jetzt einfach mit Blockly gemacht. Der Linux Control Adapter funktioniert bei mir nicht. Mein System ist wohl zu aktuell…
-
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
Der Linux Control Adapter funktioniert bei mir nicht. Mein System ist wohl zu aktuell…
soll heißen?
-
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
Ich habe das Parsing jetzt einfach mit Blockly gemacht
Für Hilfesuchende wäre es hilfreich dieses unbekannte Blockly hier zu sehen
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
Der Linux Control Adapter funktioniert bei mir nicht
? was funktioniert da nicht ?
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
Mein System ist wohl zu aktuell
Ironie oder Angeberei ?
-
@djmarc75 eher Ironie...hatte irgendwo gelesen, dass es Probleme mit der aktuellen JS Version gibt.
Linux Control meint der Host sei offline. Jede andere SSH Verbindung zum Host geht aber und anpingen kann ich ihn auch.zu den Adapter Problemen hier mehr
Ziemlich am Schluss werden da jede Menge Probleme gemeldet.
-
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
hatte irgendwo gelesen, dass es Probleme mit der aktuellen JS Version gibt.
Wahrscheinlich in einem YT Video aus dem 19. Jahrhundert
völliger Blödsinn !
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
Linux Control meint der Host sei offline
Dann ist Deine Konfig im Adapter falsch - vermute ich mal - Du sparst ja wie immer mit Logs und Infos
Und
@djmarc75 sagte in CPU Temperatur mittels SSH auslesen:
Ich habe das Parsing jetzt einfach mit Blockly gemacht
Für Hilfesuchende wäre es hilfreich dieses unbekannte Blockly hier zu sehen
die Info fehlt auch noch
-
@djmarc75 ich kann dir jetzt kein LOG Auszug mehr geben, da der Adapter nicht mehr installiert ist. Und da ich im Grunde nicht viele Infos brauche, kann ich die auch genauso gut mit einer eigenen SSH Abfrage machen. Funktioniert ja recht gut mit Javascript. Linux Control macht ja im Prinzip auch nix anderes.
Und zum Parsing mit Blockly:
nix dolles allso... -
@kymchy Nicht Dein Ernst jetzt:
Was wird in diesem Block wie genau "geparsed" ??
Antwort: NIX - hier wird nur das siebte Element aus einer unbekannten Liste in eine Zahl konvertiert und danach in eine Variable geschrieben. Das nennt man nicht "parsen" -
@djmarc75 du hast sicherlich Recht, dann nenn ich es jetzt "in einem String nach einem bestimmten Vorkommen suchen" Tut mir leid, dass ich das falsch benannt habe.
-
@kymchy sagte in CPU Temperatur mittels SSH auslesen:
dann nenn ich es jetzt "in einem String nach einem bestimmten Vorkommen suchen" Tut mir leid, dass ich das falsch benannt habe.
und wieder hilft das keinen Hilfesuchenden weiter da ja das Skript (Blockly) zum "parsen" immer noch nicht gezeigt wurde. Geheimnisse über Geheimnisse ...
-
@djmarc75
ich erstelle die Liste aus dem Text mit den Sensorwerten, benutze als Trennzeichen ein Leerzeichen und nehme daraus wie oben beschrieben das 7. Element:
das alles hat aber mit der ursprünglichen Thread Frage überhaupt nichts zu tun, die im Übrigen immer noch nicht beantwortet wurde. Denn auch der von @Meister-Mopper vorgeschlagene Befehl führt zu genau derselben Fehlermeldung, wie in der Threadanfrage beschrieben.
Wir sollten es jetzt dabei belassen. -
@kymchy
Wie sieht es hiermit aus?ssh.exec("sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'", {out: function(stdout) {console.warn(stdout);},}).start();
-
@mrjeschke said in CPU Temperatur mittels SSH auslesen:
"sensors | grep Package -m 1 | awk '{print $4}' | awk '{print substr($1, length($0)-6,2)}'", {out: function(stdout) {console.warn(stdout);},}).start();
Ja, das funktioniert. Vielen Dank für die Hilfe!