29.06.2011, 02:37 UTC+2

Sie sind nicht angemeldet.

[solved] HDD_Temp wird nicht ausgelesen

striep

Fortgeschrittener

Beiträge: 244

Geburtstag: 20.07.

Geschlecht: Männlich

Wohnort: Buxtehude

Anzahl Nagios-Server: 3

Nagios-Version(en): 3.0.6, 3.2.3

Icinga-Version(en): 1.4.1

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: ~370

Anzahl Services: ~1160

Betriebssystem(e): Linux, Solaris, Windows

Plugin-Version(en): 1.4.x

NagVis-Version: ---

NDO-Version: ---

IDO-Version: 1.4.1

Sonstige Addon's: pnp 0.4.14 & 0.6.13, NSClient++ 0.3.8, SEC

1

22.06.2011, 19:42

[solved] HDD_Temp wird nicht ausgelesen

Hi,

ich scheitere gerade an einem Check.
(Oder: ich sehe den Wald vor lauter Bäumen nicht)

Hier isser:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/bash

EXPECTED_ARGS=3
E_BADARGS=3

if [ ${#} -ne ${EXPECTED_ARGS} ]
then
    echo "Usage: `basename ${0}` {device} {warning} {critical}"
    exit ${E_BADARGS}
fi

DEVICE=${1}
WARNING=${2}
CRITICAL=${3}

RESULT=`/usr/sbin/hddtemp ${DEVICE}|awk '{print $NF}'|tr -d "°C"`

PERFDATA="|hdtemp=${RESULT};${WARNING};${CRITICAL};0;"

if [ ${RESULT} -ge ${CRITICAL} ]
then
    echo "CRITICAL - Temperature of '${DEVICE}' exeeded critical limit ( ${RESULT} )"${PERFDATA}
    exit 2
elif [ ${RESULT} -ge ${WARNING} -a ${RESULT} -lt ${CRITICAL} ]
then
    echo "WARNING - Temperature of '${DEVICE}' exeeded warning limit ( ${RESULT} )"${PERFDATA}
    exit 1
elif [ ${RESULT} -lt ${WARNING} ]
then
    echo "OK - Temperature of '${DEVICE}' is ok ( ${RESULT} )"${PERFDATA}
    exit 0
else
    echo "UNKNOWN bla"
    exit 3
fi


Die Rechte sind wie folgt gesetzt:

Quellcode

1
-rwxr-xr-x 1 icinga icinga 784 2011-06-22 19:13 ./check_hd_temp.sh


Das Kommando, welches den Wert für RESULT liefert funktioniert als user icinga:

Quellcode

1
2
3
icinga:/usr/local/icinga/libexec$ /usr/sbin/hddtemp /dev/sda|awk '{print $NF}'|tr -d "°C"
41
icinga:/usr/local/icinga/libexec$


Dafür habe ich den user icinga in die group disk mit aufgenommen:

Quellcode

1
disk:x:6:icinga


Auch der Check selber funktioniert einwandfrei als user icinga:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
icinga:/usr/local/icinga/libexec$ ./check_hd_temp.sh /dev/sda 45 48
OK - Temperature of '/dev/sda' is ok ( 41 )|hdtemp=41;45;48;0;
icinga:/usr/local/icinga/libexec$

icinga:/usr/local/icinga/libexec$ ./check_hd_temp.sh /dev/sda 40 43
WARNING - Temperature of '/dev/sda' exeeded warning limit ( 41 )|hdtemp=41;40;43;0;
icinga:/usr/local/icinga/libexec$

icinga:/usr/local/icinga/libexec$ ./check_hd_temp.sh /dev/sda 35 40
CRITICAL - Temperature of '/dev/sda' exeeded critical limit ( 41 )|hdtemp=41;35;40;0;
icinga:/usr/local/icinga/libexec$


Im icinga sehe ich aber, dass immer ein *UNKNOWN bla* (Output aus dem Script) zurückgegeben wird.

Quellcode

1
Temperatur SDA     UNKNOWN    06-22-2011 19:23:35    0d 0h 32m 30s    4/4    UNKNOWN bla


Also wird das Skript ausgeführt, nur wird der Rückgabewert nicht richtig verarbeitet.

Das ganze läuft unter ubuntu 10.04 LTS Desktop

Hat jemand noch einen Tipp, wo ich schauen könnte

Gruß
Stefan

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »striep« (22.06.2011, 21:48)


pitchfork

Super Moderator

Beiträge: 14 719

Wohnort: Kassel

Beruf: Sysadmin SAP / Linux / AIX

Anzahl Nagios-Server: 2

Hobbys: Motorrad fahren, wenns die Zeit erlaubt :-)

Nagios-Version(en): 3.2.1

Icinga-Version(en): ---

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: 310

Anzahl Services: 4500

Betriebssystem(e): Debian 5.0 Lenny

Plugin-Version(en): 1.4.x

NagVis-Version: 1.4.1

NDO-Version: ---

IDO-Version: ---

Perfparse-Version: ---

Sonstige Addon's: SNMPTT, NagTrap, NagVis 1.4.5, check_mk, PNP-0.6.x. Thruk

2

22.06.2011, 19:57

Verwende mal den vollständigen Pfad zu awk
PNP Developer.
PNP 0.6.13 ist online !
Fragen zu PNP mit Angabe der verwendeten PNP Version werden bevorzugt beantwortet.
OMD - Open Monitoring Distribution

striep

Fortgeschrittener

Beiträge: 244

Geburtstag: 20.07.

Geschlecht: Männlich

Wohnort: Buxtehude

Anzahl Nagios-Server: 3

Nagios-Version(en): 3.0.6, 3.2.3

Icinga-Version(en): 1.4.1

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: ~370

Anzahl Services: ~1160

Betriebssystem(e): Linux, Solaris, Windows

Plugin-Version(en): 1.4.x

NagVis-Version: ---

NDO-Version: ---

IDO-Version: 1.4.1

Sonstige Addon's: pnp 0.4.14 & 0.6.13, NSClient++ 0.3.8, SEC

3

22.06.2011, 20:15

Hallo Jörg,

habe das mal so geändert:

Quellcode

1
/usr/sbin/hddtemp /dev/sda|/usr/bin/awk '{print $NF}'|/usr/bin/tr -d "°C"


leider kein Erfolg

Gruß
Stefan

striep

Fortgeschrittener

Beiträge: 244

Geburtstag: 20.07.

Geschlecht: Männlich

Wohnort: Buxtehude

Anzahl Nagios-Server: 3

Nagios-Version(en): 3.0.6, 3.2.3

Icinga-Version(en): 1.4.1

Verteiltes Monitoring: Nein

Redundantes Monitoring: Nein

Anzahl-Hosts: ~370

Anzahl Services: ~1160

Betriebssystem(e): Linux, Solaris, Windows

Plugin-Version(en): 1.4.x

NagVis-Version: ---

NDO-Version: ---

IDO-Version: 1.4.1

Sonstige Addon's: pnp 0.4.14 & 0.6.13, NSClient++ 0.3.8, SEC

4

22.06.2011, 21:47

Tja, wer lesen kann ist mal wieder klar im Vorteil

Quellcode

1
/usr/sbin/hddtemp -n /dev/sda


gibt nur die Temperatur aus.
Damit geht es dann auch.

Gruß
Stefan

Ähnliche Themen