15 lutego 2013

Nagios - powiadomienie o wyłączeniu powiadomień

Czasami podczas większych akcji aktualizacyjnych musimy wyłączyć wszystkie powiadamiania ( Process Info->Disable notifications ) w Nagiosie, poniższy skrypt sprawdza czy powiadamiania są wyłączone, jeśli tak to wysyła maila z informacją.

 Skrypt ustawiony jest w cronie i powiadamia co ustalony w nim czas, o tym, że powiadomienia są wyłączone. Pozwala to uniknąć sytuacji, że ktoś zapomni włączyć powiadomienia w Nagiosie po skończonej pracy.
#!/bin/bash

if [ -e /usr/local/nagios/var/nagios.log ] ; then
    INFO=$(grep "EXTERNAL COMMAND: DISABLE_NOTIFICATIONS\|EXTERNAL COMMAND: ENABLE_NOTIFICATIONS" /usr/local/nagios/var/nagios.log | tail -1)

# wycinanie tekstu
    I=$(echo $INFO | cut -d "]" -f 2 | cut -d ":" -f 2 | cut -d ";" -f 1)
    TIME=$(echo $INFO | cut -d ";" -f 2)

    if [ $I == "DISABLE_NOTIFICATIONS" ] ; then

# tekst wiadomosci
        WIADOMOSC="/tmp/wiadomosc.txt"
        echo -n "NAGIOS $I od: " > $WIADOMOSC
        date -d @$TIME >>$WIADOMOSC

# temat wiadomosci  
        SUBJECT="Notyfikacje Nagios wylaczone!"

# email na ktory wysylamy  
        EMAIL="helpdesk@xxxxxxxx.pl"
        
# wysyłanie maila  
        /usr/bin/mail -s "$SUBJECT" "$EMAIL" < $WIADOMOSC

        rm /tmp/wiadomosc.txt
    fi
fi

ustawienie crona aby skrypt wysyłał e-mail z informacją co godzinę
0 * * * * /opt/nagios_notification_test/notification_test.sh

Brak komentarzy:

Prześlij komentarz