Script zur CPU Auslastung gesucht

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Script zur CPU Auslastung gesucht

Post by aubergine » 2006-02-24 22:03

Hi,


ich habe einen neuen Server der nur als Gameserver genutzt wird.
Ich möchte hier Abstand zu aufwendigen Web basierenden Lösungen zum Server Monitoring nehmen (cacti, serverstats etc..)

Ich strebe eine einfache Lösung an die folgendes ausführen soll:

1. Nur CPU Last soll mitgeschnitten werden wenn diese über 90% ist
2. Ausgabe in einfache Datei mit Datum und Uhrzeit, mit allen Prozessen die über 5% der CPU-Performance in Anspruch nehmen.

Ob das ganze Perl oder SH basierend ist, wäre mir im Endeffekt egal.

Wäre nett wenn jemand Lösungsansätze hätte.


Grüße

aubergine

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Script zur CPU Auslastung gesucht

Post by Roger Wilco » 2006-02-24 22:51

Ich würde dafür monit benutzen. Das ist klein und besitzt die nötige Flexibilität, um deine Anforderungen umzusetzen.

flo
RSAC
Posts: 2297
Joined: 2002-07-28 13:02
Location: Berlin

Re: Script zur CPU Auslastung gesucht

Post by flo » 2006-02-24 22:54

aubergine wrote:Ob das ganze Perl oder SH basierend ist, wäre mir im Endeffekt egal.

Wäre nett wenn jemand Lösungsansätze hätte.
Die Lösungsansätze hast Du doch schon - woran hängt es jetzt, wenn ich fragen darf?

uptime, date, ps, awk, sed, cat und bash sollten das hinbekommen, das Prozedere hast Du schon, der Rest ist stupide Tipparbeit und ein paar Tests.

Grüße,

flo.

aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Re: Script zur CPU Auslastung gesucht

Post by aubergine » 2006-02-25 01:16

Dank dir monit ist schlichtweg genial...

aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Re: Script zur CPU Auslastung gesucht

Post by aubergine » 2006-02-25 15:18

Eine Frage hätte ich zu monit.

Eigentlich sollte ja auch eine von Prozessen Unabhängige Ã?berwachung möglich sein.

Sobald ich aber eine Directive wie:

Code: Select all

check system foo.bar
if loadavg (1min) greater than 10 for 5 cycles then monitor
if cpu usage (user) is greater than 5% for 2 cycles then monitor
hinzufüge erhalte ich einen Sytnax Error bei foo.bar.

Prozess Ã?berwachung funktioniert dagegen wunderbar.

Aus den Tutorials von Debian und monit selbst wurde ich auch nicht schlau warum das oben genannte nicht funktioniert.


Und noch eine Frage, wenn ich monit dazu einsetzen will einen ProFTPd zu überwachen der über inetd gestartet ist (also nicht standalone) wie könnte man dies realisieren?

Vielleicht hat ja jemand ein Tipp für mich was diese beiden Dinge angeht.


Grüße und schönen Fasching


aubergine

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Script zur CPU Auslastung gesucht

Post by Roger Wilco » 2006-02-25 16:38

aubergine wrote:Sobald ich aber eine Directive wie:

Code: Select all

check system foo.bar
if loadavg (1min) greater than 10 for 5 cycles then monitor
if cpu usage (user) is greater than 5% for 2 cycles then monitor
hinzufüge erhalte ich einen Sytnax Error bei foo.bar.
man monit. "system" ist kein gültiges Schlüsselwort bzw. kein gültiger Parameter für "check".

EDIT: Ab monit 4.7 schon, http://www.tildeslash.com/monit/dist/CHANGES.txt :roll:
aubergine wrote:Und noch eine Frage, wenn ich monit dazu einsetzen will einen ProFTPd zu überwachen der über inetd gestartet ist (also nicht standalone) wie könnte man dies realisieren?
Entweder du überwachst den inetd (check process) oder du überprüfst, ob auf Port 21 ein Service reagiert (check host).
Last edited by Roger Wilco on 2006-02-25 17:40, edited 1 time in total.

aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Re: Script zur CPU Auslastung gesucht

Post by aubergine » 2006-02-25 17:30

Ok das mit dem FTP hab ich so in der Art hinbekommen.

Zum CPU nochmal:

Auszuag aus dem Manual:

"
check system myhost.mydomain.tld
if loadavg (1min) > 4 then alert
if loadavg (5min) > 2 then alert
if memory usage > 75% then alert
if cpu usage (user) > 70% then alert
if cpu usage (system) > 30% then alert
if cpu usage (wait) > 20% then alert
"

Und dort wird das ja genau so beschrieben wie ich es eigentlich haben will, nur leider immerwieder syntax Error.

Page: http://www.tildeslash.com/monit/doc/man ... to_monitor

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Script zur CPU Auslastung gesucht

Post by Roger Wilco » 2006-02-25 17:39

"check system" ist erst ab monit 4.7 verfügbar. Du hast offensichtlich eine ältere Version.

aubergine
RSAC
Posts: 475
Joined: 2005-09-10 17:52
Location: Frankfurt am Main

Re: Script zur CPU Auslastung gesucht

Post by aubergine » 2006-02-25 17:55

Achso ok, ja ich hab die 4.6.1

Wüsstest du eine Möglichkeit für mein Problem bezogen auf diese Version?

Leider sind ja bereits alle Manuals auf die neue Version angepasst

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Script zur CPU Auslastung gesucht

Post by Roger Wilco » 2006-02-25 17:58

Mach einfach ein Update auf monit 4.7.