Ein Modul zur Erfassen von diversen RPi/Linux-Statistiken (SYSMON)

Begonnen von hexenmeister, 06 Dezember 2013, 17:44:38

Vorheriges Thema - Nächstes Thema

hexenmeister

Hallo Jens,

ich habe eine neue Version in SVN eingecheckt, wäre schön, wenn Du morgen mal testen könntest. Es sollte ger keine Meldung mehr über "cpu/kernel_max" kommen.

Grüße,

Alexander


Newbie

Hallo Alexander,

mach ich natürlich gerne. Aber wenn ich das so lese:

http://forum.fhem.de/index.php/topic,27737.msg206869.html#msg206869

ZitatDer stacktrace wurde auf Wunsch von Boris per default ausgeschaltet.

hm - Ich bin nur Nutzer von FHEM und euren Modulen, an dieser Stelle ein großes Dankeschön an Dich und allen Anderen, aber diese  halbe Rolle rückwärts versteh ich jetzt nicht. Ich dachte als Modulentwickler fühlt mann sich besser/sicherer wenn mann weiß da sind keine Fehler im Modul bzw. ich als Nutzer sehe gleich wo vielleicht bei meinem Code der Wurm drin ist.

vg und gute Nacht, Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

hexenmeister


ich fand praktisch und hätte angelassen. ist aber auch so ok, denn man kann ja selbst freischalten.

Grüße,

Alexander


Newbie

#573
Hallo Alexander,

habe mit der letzten Version von deinem Modul keine Meldungen mehr im Log-File, auch über PuTTY kommt nichts.


Nochmals danke, Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

hexenmeister

#574
Zitat von: hexenmeister am 04 Oktober 2014, 23:11:28
die TODO-Liste:
- zweite CPU Frequenz (einfach)
- Netzwerkdaten auf OSX (komplex, vor allem, weil ich kein OSX habe)
- Verbindungsdaten auf FritzBox (eher einfach) => done

Morgen per Update: Zusätzliche Informationen für FritzBox:
- DSL-Downstream und DSL-Upstream,
- Sync-Zeit mit Vermittlungsstelle abfragen (DSLAM),
- Behebbare (FEC) und nicht behebbare (CRC) Übertragungsfehler in den letzten 15 Minuten.

(http://forum.fhem.de/index.php?action=dlattach;topic=17201.0;attach=19939;image)

@volschin: Hilft Dir das weiter?

Grüße,

Alexander


volschin

Hallo Alexander,
die DSL-Daten tun es perfekt. Vielen Dank dafür.  :)

Ich hatte letztens ein "no sync" stehen, dummerweise funktionierte dann keine Push-Benachrichtigung per Prowl mehr. Dafür muss ich mir noch was überlegen. Teamcall mit den Rauchmeldern ist für einen nächtlichen DSL-Ausfall auch nicht das Wahre.  ;)

Ich hätte für die Wunschliste auch noch eine Idee:
Aktuell wird im HTML-Output einfach das aktuelle Datum/Zeit angezeigt. Eigentlich hat das doch keinerlei Mehrwert. Cool wäre es, wenn statt der aktuellen Zeit der höchste Timestamp genommen wird. Wird sich normalerweise nicht sonderlich unterscheiden, außer es wird nicht mehr aktualisiert.

Gruß
Veit 
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

hexenmeister

Hm... Was hat man von so einem Wert? Wenn SYSMON läuft, wird schon immer irgendwas aktualisiert. Oder willst Du das mit per FHEM2FHEM geclonnten Daten nutzen, also praktisch ein Test für das Funktionieren von FHEM2FHEM-Verbindung?

volschin

So ungefähr hatte ich mir das gedacht. Bin mir aber selbst noch nicht sicher, ob das richtig gedacht ist.  ::)
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

hexenmeister

Ich auch nicht... Muss 'ne Nacht darüber schlaffen ;)
Wenn Du eine Begründung oder einen Anwendungsfall hast, dann her damit, baue ich gerne ein.  ;)
So sehe ich noch den Nutzen nicht...

Joachim

#579
Moin Hexenmeister,

bein Arbeiten mit dem user-defined Attribut ist mir bei diesem Eintrag:

attr sysmon user-defined hdd_temp:1:Festplattentemperatur:hddtemp /dev/sda

aufgefallen, dass im Logfile eine unnötige Leerzeile geschrieben wird:
2014-11-14_17:35:41 sysmon power_battery_stat: 0 1 4.107 4 100
2014-11-14_17:35:41 sysmon hdd_temp: /dev/sda: WDC WD10JFCX-68N6GN0: 37°C

2014-11-14_17:35:41 sysmon stat_cpu_percent: 1.60 0.00 0.63 96.54 0.09 0.00 1.14

beheben lässt sich dass in der sub SYSMON_getUserDefined($$$$) (Zeile 928ff)
sub
SYSMON_getUserDefined($$$$)
{
my ($hash, $map, $uName, $uCmd) = @_;
logF($hash, "SYSMON_getUserDefined", "Name=[$uName] Cmd=[$uCmd]");

my $out_str = SYSMON_execute($hash, $uCmd);
        chomp $out_str; <-------------------------------------------------------------------------------------------------------------------------
$map->{$uName} = $out_str;

return $map;
}


Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

hexenmeister

Hallo Joachim,

vielen Dank für die Meldung und die mitgelieferte Problemlösung ;)
Ist eingecheckt.

Grüße,

Alexander

Joachim

@ Hexenmeister,
Dafür nicht, war reines Eigeninteresse.

aber mal eine andere Frage?
hast Du eventuell eine Idee, wie man die wichtigen Smartctl-Werte in SYSMON integriert?

root@cubie:~# smartctl -A /dev/sda
smartctl 6.4 2014-10-07 r4002 [armv7l-linux-3.4.104-sunxi] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   181   181   021    Pre-fail  Always       -       1950
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       24
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       77
10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       24
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       16
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       7
194 Temperature_Celsius     0x0022   110   105   000    Old_age   Always       -       37
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

also die Werte vom Typ Pre-fail.
Oder macht das keinen Sinn?
Eventuell hat ja auch ein anderer eine bessere Idee.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

hexenmeister

Kriegen wir irgendwie schon hin ;)

Direkt mit userReading ist das wohl eher unpraktisch...
Ich überlege uín zwei Richtungen: entweder direkt integrieren, aber dann mus man das Ganze irgendwie abschaltbar machen, nicht jeder hat ja smartmontools installiert. Oder doch mit userReading per Aufruf eines externen Programms (perl?)
Was denkst Du?

Und in welchem Format hättest Du die Ausgaben gerne?

Grüße,

Alexander

Joachim

Moin Alexander,
ich habe selbst fast keine Ahnungvon S.M.A.R.T deshalb bleibt mir nur, mich da ersteinmal einzulesen, und zu experimentieren, um Deine Frage zu
beantworten.
Vielleicht gibt es ja hier jemanden, der da mehr Ahnung hat.
Die Smartmontools sind ein unheimlich mächtiges Werkzeug mit diversen Möglichkeiten.
Aber welche Informationen sind bei einen FHEM-Server für die Gesundheitsüberwachung der Festplatte(n) wirklich aussagekräftig?

Bei einer direkten Integration wäre der Vorteil, die für einen selbst interessanten Informationen per Attribut scharf schalten zu können.
Wahrend bei einer userReading Variante dann ein Shellscript gestartet werden müsste.

Ich schlage mal vor, ich lese mich mal ein, und hoffe, dass sich noch jemand meldet, der mehr Ahnung hat wie ich, und dann überlege(n) ich/wir,
wie das am besten umzusetzen ist.
Denn vom Prinzip her schreit SYSMON einfach danach, auch den Gesundheitszustand der Festplatten zu überwachen.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

hexenmeister

Hallo Joachim,

da ich mich mit S.M.A.R.T. leider auch nicht auskenne, warte ich erstmal auf Deinen Vorschlag. Wenn Du was konkreteres hast, sag Bescheid. Ich finde diese Inforamtion auch sehr interessant und baue sie gerne ein.

Grüße,

Alexander