Update SYSMON: Unterstützung für FreeBSD hinzugefügt, weitere Wünsche?

Begonnen von Aurel_B, 16 März 2024, 16:25:34

Vorheriges Thema - Nächstes Thema

Aurel_B

Hallo zusammen,

seit ein paar Wochen läuft FHEM erfolgreich auf meinem FreeBSD Server (https://forum.fhem.de/index.php?topic=137514.msg1307124). Da es seit Jahrzehnten mein präferiertes Serveros ist werde ich FHEM voraussichtlich auch weiterhin auf FreeBSD belassen. Ich habe mal SYSMON modifiziert, welcher ja bislang (offiziell) nur unter Linux läuft.

Folgendes habe ich umgesetzt:
  • Alte Funktionalität komplett belassen
  • Neue Readings: os und os_version (z.B. "freebsd" und "FreeBSD 14.0-STABLE"). Sanfte Umstellung der Funktionen für os-abhängige Checks, also if (os==linux) linux-teil elsif (os==freebsd) freebsd-teil)
  • Neue Gesamtdurchschnittswerte für cpu_temp und cpu_freq! Diese wurden bislang nur auf speziellen Hardwareplattformen (RPi) bereitgestellt. Diese neuen Durchschnittswerte werden anhand von cpuX_temp/_freq berechnet (=das sind die Einzelwerte pro Core)
  • Alle readings gehen nun auch unter FreeBSD. Einzig die Readings zur Stromversorgung habe ich nicht angepasst da ich a) keinen Sinn darin sehe und b) ich sie nicht testen kann.
  • Dokumentation angepasst und ergänzt, so dass die kleinen Hilfstexte erscheinen wenn man ein attr auswählt. Ich kann das leider nicht testen weil man glaub ich die Dokumentation separat kompilieren muss?

Bei mir funktioniert lokal alles tiptop. Möchte das sonst noch jemand testen? Und - wenn ich gerade dabei bin - gibt es sonst noch Wünsche für SYSMON?

Meine Frage nun da ich damit Neuland betreten habe: wie geht es weiter, sinnvollerweise wird nun das Modul von @rudolfkoenig angeschaut und - falls für gut befunden - eingecheckt?

Ich würde gerne das Modul etwas aufräumen: einheitliche Code-Einrückungen, einheitliche Doku, entfernen von nicht verwendeten Funktionen:

sub SYSMON_test
sub SYSMON_TestUserFn
sub SYSMON_isOSX() {
sub SYSMON_isLinux() {
sub SYSMON_getRamAndSwapOSX($$) {
sub SYSMON_fmtStorageAmount_($) {
sub SYSMON_isSysCpuNum
sub MYTEST() {

werden alle (nicht) mehr verwendet resp. sind Überbleibsel aus alten Zeiten (SYSMON_getRamAndSwapOSX z.B. für OSX, macht für mich keinen Sinn da der Rest von SYSMON keinerlei Unterstützung für OSX anbietet). Ist das OK?

Du darfst diesen Dateianhang nicht ansehen.

Aurel_B

Schade, dass bisland niemand geantwortet hat. Habe noch einen kleinen Bug gefixt (CPU temp avg wurde falsch berechnet)