2014-12-09 9 views
6

Chcę spróbować monitorować kolejkę postfixów za pomocą monitora. Podjąłem przykład od ludzi z Stackoverflow. Moja wersja Monit jest najnowszymProgram do sprawdzania monitu zwraca "brak danych wyjściowych"

Jest to wersja Monit 5,10

W /etc/monit.d mam postfixlocal z

check program postfixcola with path "/usr/local/bin/postfixcola.sh" 
    #if status != 0 then alert 
    if status > 1 then alert 

a potem w /usr/local/bin/ mam postfixcola.sh z

#!/bin/sh 
QUEUE=`/usr/sbin/postqueue -p | tail -n1 | awk '{print $5}'` 
exit $QUEUE 

Ale Monit za każdym razem skarży się na wynik działania skryptu. Zrobiłem test, ustawianie i echo przed exit w momencie badania to zwróciło 1 (ponieważ kolejka Postfix był 1)

ale błąd pozostaje: [CET Dec 9 11:10:07] error : 'postfixcola' '/usr/local/bin/postfixcola.sh' failed with exit status (2) -- no output

ja naprawdę nie wiem Jaki jest problem, wszelkie myśli?

Odpowiedz

0

W skrypcie bash należy powtórzyć wiadomości do/dev/stderr:

#!/bin/bash 
QUEUE=`/usr/sbin/postqueue -p | tail -n1 | awk '{print $5}'` 
if [ $QUEUE -ne 0 ] ; then 
    echo "Queue length > $QUEUE" > /dev/stderr 
fi 
exit $QUEUE 
Powiązane problemy