Portál AbcLinuxu, 12. května 2025 18:22

Dotaz: Nagios a Status inform,ation

17.5.2012 07:29 Jiřík 1435 | skóre: 8
Nagios a Status inform,ation
Přečteno: 216×
Odpovědět | Admin
Příloha:
Dobry den, chci pouzivat Nagios (bezi na Lucid Lynx) pro monitorovani teplotnich cidel. Napsal jsem si proto skript v pythonu kde jako prvni argument zadam IP adesu cidla, druhy parametr je hranice pro WARN a treti pro CRICITAL. Prikladam definice v konfiguracnich souborech.
define command {
        command_name    my_papouch_teplota
        command_line    /papouch.py '$HOSTADDRESS$' '$ARG1$' '$ARG2$': -w '$ARG2$':  -c '$ARG3$': -l 'Vystup: ' -u $HOSTOUTPUT$
}

define service {
        hostgroup_name                  papouchy
        service_description             Teplota
        check_command                   my_papouch_teplota!15!45
        use                             generic-service
}
Vse funguje jak ma s tim rozdilem ze kdyz si zobrazim webove rozhrani nagis-u tak v Service datail ve sloupci Status information vidim napsano (null), viz. prilozeny obrazek. Ja bych tam potreboval napsat neco jako Teplota je v poradku atd. nevite nekdo jak na to ?

Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

17.5.2012 09:14 skunerq | skóre: 19 | blog: skunerovo
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
Odpovědět | | Sbalit | Link | Blokovat | Admin
nejak se mi nezda ta definice prikazu, jestli je to z check z monitoring exchange, tak by to melo byt /papouch.py -H $HOSTADDRESS$ -C $ARG1$ -c $ARG2$ -w $ARG3$

kde ARG1 bude snmp communita, ARG2 warning a ARG3 critical uroven

a co vypise spusteni z CL, neco jako ./papouch.py -H IP.AD.RE.SA -C community -w 15 -c 45
Řešení 1× (Jiřík 1435 (tazatel))
17.5.2012 09:29 pvc2
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ve skriptu papouch.py bude na vhodném místě:

print "Teplota v pořádku" 
sys.exit(0)

Mimo to, použití makra $HOSTOUTPUT$ bych si dovedl představit v definici příkazu pro odeslání mailu o stavu hosta. Snad by měl ten command_line skončit hned za '$ARG2$'.

Ukládat si plugin pro nagios do kořenového adresáře je poněkud netradiční.

17.5.2012 09:53 Jiřík 1435 | skóre: 8
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
Prikladam script.
#!/usr/bin/python

import sys
import os
import commands

host =  sys.argv[1]
warn_value = int(sys.argv[2])
crit_value = int(sys.argv[3])

ret = { 'OK' : 0 , 'WARNING' : 1, 'CRITICAL' : 2 , 'UNKNOWN' : 3}

status, output = commands.getstatusoutput('/usr/bin/snmpwalk -Ov -c public -v 1 ' + host + ' .1.3.6.1.4.1.18248.20.1.2.1.1.2.1')
if status != 0:
  print output
  sys.exit(ret["UNKNOWN"])

deftype, val = output.split(':')
temp = float(val) / 10

if temp >= warn_value:
  if temp >= crit_value:
    print 'To je kriticke'
    sys.exit(ret["CRICITAL"])
  else:
    print 'To je varovani'
    sys.exit(ret["WARNING"])


print 'No a to je ok'
sys.exit(ret["OK"])
Do korenoveho adresare sem jej prilozil jen kvuli testovani, pujde pak na spravne misto.
17.5.2012 09:57 Jiřík 1435 | skóre: 8
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
A definici commandu sem upravil takto:
define command {
        command_name    my_papouch_teplota
        command_line    /papouch.py '$HOSTADDRESS$' '$ARG1$' '$ARG2$': -w '$ARG2$':  -c '$ARG3$'
}
Problem vsak presto pretrvava.
Řešení 1× (Jiřík 1435 (tazatel))
17.5.2012 11:07 pvc2
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
Takhle jsem to myslel:

command_line /papouch.py $HOSTADDRESS$ $ARG1$ $ARG2$

17.5.2012 11:54 Jiřík 1435 | skóre: 8
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
Ano mate pravdu. Ted si uvedomuji jaky sem vul :-) Dekuji mnohokrat.
17.5.2012 13:31 pvc2
Rozbalit Rozbalit vše Re: Nagios a Status inform,ation
A nezapomeňte si opravit to "CRICITAL".

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.