Kleines Statistik-Script

Open-Source-Projekte unserer User
Post Reply
theomega
Userprojekt
Userprojekt
Posts: 696
Joined: 2003-01-27 14:36
Contact:
 

Kleines Statistik-Script

Post by theomega »

Hallo Leute,
ich biete hier ein Script an, das folgende Daten mitloggt und daraus Graphen erstellt:
- CPU Last in Prozent
- Load 1min/5min/15min
- Festplatten-Auslastung für bis zu 12 Paritionen
- Temperatur der Systemkomponenten CPU,Motherboard, Gehäuse und Festplatte
- Speicherauslastung
Beispiel/Demo: http://flacons.org/rrdtool/

Vorrausetzungen:
- Ein Kernel 2.6.x (sonst funktioniert das CPU-Modul nicht)
- Konfigurierte LM_Sensors für das Temperatur-Modul (Dafür gebe ich hier keine Anleitung)
- Installiertes hddtemp für die Festplatten-Temerpatur. Es muss auch eure Platte erkennen.
- Installiertes RRDTool mit Version>=1.2 (bitte nachschaun, es geht wirklich nicht darunter)
- ca. 15MB freien Speicherplatz

Installation:
1. Ein Verzeichniss anlegen wohin installiert wird. In meinem Beispiel /opt/rrdtool:

Code: Select all

mkdir /opt/rrdtool
cd /opt/rrdtool
2. Datei runterladen & entpacken

Code: Select all

wget http://www.dbruhn.de/div/domstat.tar.gz
tar -xvzf domstat.tar.gz
3. RRD-Dateien anlegen

Code: Select all

sh install.sh
4. Konfigurierern:
Mit dem bevorzugten Editor die config.sh öffnen:

Code: Select all

nano config.sh
Allgemeines
debug Zum testen auf 1 setzten, nacher auf 0 sonst gibt unmengen an Mails vom Cron-Daemon
inputdir Verzeichniss in dem die Dateien liegen, in meinem Fall also /opt/rrdtool . Bitte ohne Slash dahinter
rrdtoolbin Der volle Pfad zur RRDTool-Binary. Herausfinden mit 'which rrdtool'. Sollte auf Debian und Gentoo passen.
outputdir Verzecihniss in dem die Ausgabe-Dateien also Bilder usw erstellt werden. Sollte irgendwo in euerem webroot liegen. Auch ohne Slash dahinter.
dotemps Auf 0 setzten falls ihr das Temperatur-Modul nicht nutzen wollt weil ihr es nicht eingerichtet habt.
modules So lassen außer ihr wollt bestimmte Statistiken nicht erstellen lassen.
times Welche Zeitspannen sollen erstellt werden. Sie rrdtool-doku, wenn ihr einen weiteren Zeitbeeich wollt einfach hier hinzufügen.
indextime Welcher Zeitraum soll auf der Übersicht angezeigt werden?

Festplatten-Modul
X sei eine Zahl zwischen 1 und 12 dann ist:
lpX Paritionsname. Dieser muss eindeutig in 'df' sein. Bitte nur Partitionen eintragen die dort aufgeführt sind.
lpXl Beschreibung. Ein frei wählbarer Name der die Parition beschreibt
lpXc Eine Farbe: HTML-Farbcode bestehend aus 6 Hex-Ziffern ohne das # davor

Temperatur-Modul
Vor dieser Konfiguration testen ob sensors richtige Ausgaben macht.
temp_cpu Name des CPU-Temperatur-Sensors in der "sensors" ausgabe. Meistens "CPU Temp". Vor jedes leerzeichen MUSS ein davor (escaping).
temp_cpu_s Enthält der Name des Sensors ein Leerzeichen dann hier 3 setzten, sonst 2.

Für die anderen beiden Sensoren (mb und case genauso)

temp_hdd Festplatten-Device das mitgeloggt werden soll.

5. Daten-Sammeln testen:

Code: Select all

sh update.sh
Es müssten jetzt die verschiedenen Werte aufgeführt werden, am besten überprüfen. Wenn eine Fehlermeldung kommt nochmal alles genau checken.

6. Cronjob für den Datensammler anlegen:

Code: Select all

crontab -e
Dort einfügen

Code: Select all

*/1 * * * *     /opt/rrdtool/update.sh
Den Pfad evtl anpassen

7. In der config-datei das debugging ausschalten

8. Einige Stunden warten und den root-mail-account prüfen ob fehlermeldungen ankommen.

9. Das Generator-Script ausprobieren:

Code: Select all

sh generate.sh
Es sollten jetzt im Ausgabe-Verzeichniss viele gif-dateien und einige html-dateien existieren, einfach mal mit dem browser anschaun ob alles passt

10. Einen Cronjob für das generate-Script anlegen (Vorschlag: Jede Stunde, kann aber auch mehr oder weniger sein)

Code: Select all

crontab -e
Dort einfügen

Code: Select all

0  * * * *      /opt/rrdtool/generate.sh
Pfad evtl anpassen.

Das wars, es wäre nett, wenn ihr einen Link für die Statistiken sehen lasst und ein bischen feedback geben würdet.

Gruß
TO
Last edited by theomega on 2006-06-14 11:29, edited 1 time in total.
lufthansen
Posts: 390
Joined: 2002-09-24 17:31
Location: NRW
 

Re: Kleines Statistik-Script

Post by lufthansen »

bis auf den cpu graph funktioniert das bei mir.
da ich kernel 2.4.32-grsec einsetze.
mal gucken ob ich dasumstricken kann.
ansonsten sehr nett *Lob* ! :D
lag an einer falschen rrdtool version
cpu geht jetzt zumindest der load
theomega
Userprojekt
Userprojekt
Posts: 696
Joined: 2003-01-27 14:36
Contact:
 

Re: Kleines Statistik-Script

Post by theomega »

Poste einfach mal bitte die ausgabe folgendes befehls, dann kann ich es auch übernehmen:

Code: Select all

cat /proc/stats
lufthansen
Posts: 390
Joined: 2002-09-24 17:31
Location: NRW
 

Re: Kleines Statistik-Script

Post by lufthansen »

Code: Select all

cat /proc/stat
cpu  45886060 105278265 5109468 716531365
cpu0 45886060 105278265 5109468 716531365
page 1092145940 1238790828
swap 1057919 126041
intr 1575327593 872805158 2 0 0 68272 0 2 2 0 0 495867782 0 0 0 103276795 103309580
disk_io: (3,0):(104625153,22677706,1092364798,81947447,2477077856)
ctxt 3791244766
btime 1141505638
processes 7381655
dankeschön :)
wobei wenn ich die debug ausgabe richtig interpretiere scheint er die daten doch zu bekommen oder nicht ?

Code: Select all

./update.sh
[LOAD][1150233743][0.30:0.33:0.26]
[CPU][1150233743][45886746:5109535:105278265:716536019:::]
[HDD][1150233743][17896:474348:87916312:155906404:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0]
[CPUSPEED][1150233743][2004.585]
[MEM][1150233743][1057189888:71741440:534409216:33439744:417599488]
theomega
Userprojekt
Userprojekt
Posts: 696
Joined: 2003-01-27 14:36
Contact:
 

Re: Kleines Statistik-Script

Post by theomega »

Stimmt, wie siehts bei der Grafik-Erstellung aus? Die Linie mit den Interrups müsste nicht sichtbar sein, aber sonst müsste es funktionieren oder?
vevelt
Posts: 122
Joined: 2003-08-01 12:18
Location: Itzehoe
Contact:
 

Gibt...

Post by vevelt »

...es irgendwo 'n Demo, was man sich im Vorwege einmal kurz ansehen kann? :wink:
braindead
Posts: 250
Joined: 2002-10-22 09:49
Location: vorm Rechner
 

Re: Kleines Statistik-Script

Post by braindead »

lufthansen
Posts: 390
Joined: 2002-09-24 17:31
Location: NRW
 

Re: Kleines Statistik-Script

Post by lufthansen »

wolltest du nicht eine korrigierte versien hochladen ?
theomega
Userprojekt
Userprojekt
Posts: 696
Joined: 2003-01-27 14:36
Contact:
 

Re: Kleines Statistik-Script

Post by theomega »

So, eine aktualisierte Version ist oben, folgende Änderungen:
1. Ein Kernel 2.4 support, allerdings müsste den jemand testen, siehe neue Einstellungsmöglichkeit in der config
2. Das Festplatten-Modul gibt jetzt die Festplatten aus.
Post Reply