Solaris: loadaverage in Skript auswerten

Ulix

Ulix

Ganz am Anfang
Hi zusammen,

ich soll nen Skript schreiben, das verschiedene Systemwerte analysiert und bei Grenzwertüberschreitung Alarm schlägt. Das ganze allerdings unter Solaris (uname -a: SunOS 5.10), was mich fast zum verzweifeln bringt.
Gerade hänge ich beim Load Average fest. Folgendes hab ich schon ausprobiert:
- uptime per cut: fast nicht möglich, da je nach Laufzeit und Sprache des Systems verschieden viele ":" oder "," existiren
- uptime per cut und rev: ( uptime | rev | cut -b1-16 | rev | cut -b1-4 ) geht unter linux wunderbar, blos Solaris kennt kein rev
- cat /proc/loadavg : gibts unter Solaris net
- ausschneiden per awk oder sed: Ich kenn mich damit net aus, aber soweit ich Tutorials überflogen hab, können die auch nicht von hinten ausschneiden

Hat jemand ne Idee wie ich des anstellen könnte?

P.S.: So nen Art load average für CPU-Last in % und HDD gibts nicht zufällig?

Ulix
 
Hast du top installiert? Wenn Nein, dann besorg es dir von Sun Freeware (oder Solaris 10 Companion CD) und mit
Code:
$ /opt/sfw/bin/top -b | grep "load averages" | ...
bekommst die Werte. Musst halt noch schön cutten. ;)

Aber grundsätzlich muss Linux und Solaris in einem Skript unterscheiden.


mfg
 
Zuletzt bearbeitet:
Ich würde einfach Munin installieren. Das kann Alarmmeldungen senden und diverse Systemwerte überwachen. ;)
 
Falls awk drauf ist:

Code:
uptime | awk -F: '{print $NF}'
Damit hast du die letzten Werte

Das kannst du auch nochmal trennen, wenn dich nur der erste Wert interessiert:
Code:
uptime | awk -F: '{print $NF}' | awk '{print $1}'

Oder eben alle:
Code:
uptime | awk -F: '{print $NF}' | awk '{print $1" "$2" "$3}'
 
@Munin: Sieht interessant aus, aber mein Chef will was ganz einfaches.
@awk: ah, $NF = letztes Element, damit dürfte es auch gehen.

Ulix
 
Zurück
Oben