Sempre più spesso viene richiesta la possibilità di monitorare lo stato dei trunk voip presenti su Nethvoice per intervenire in maniera tempestiva prima che il cliente possa accorgersi della anomalia.
Per poterlo fare si può applicare questa procedura che inserisce uno script, il quale viene eseguito ogni 10 minuti, tramite schedulazione cron (ovviamente la frequenza è variabile) e verifica lo stato dei trunk sia ok e se non lo fosse attiva, tramite collectd, un allarme su my.nethesis.it che invierà email all'indirizzo specificato per gli allarmi.
per attivare lo script seguire i passaggi seguenti:
chmod u+x /root/trunk.sh
3. bisogna editare il file e inserire lo script seguente:
#!/bin/sh
#
# Check for offline or unreachable PJSIP trunks or peers aka extensions
#
TMP=$(mktemp)
/usr/sbin/asterisk -rx 'pjsip list registrations' | egrep "Unknown|Unreachable|Forbidden|Rejected|Unregistered" >$TMP
#
if [[ -s $TMP ]]; then
echo -e "PUTNOTIF host=$(hostname) plugin=trunk plugin_instance=pjsip:fascio type=failure severity=failure time=$(date +%s) message=\"registrazione fascio FAILURE\"" | nc -U /var/run/collectd.sock &>/dev/null
else
echo -e "PUTNOTIF host=$(hostname) plugin=trunk plugin_instance=pjsip:fascio type=failure severity=okay time=$(date +%s) message=\"registrazione fascio OK\"" | nc -U /var/run/collectd.sock &>/dev/null
fi
rm -f $TMP4. Per fare in modo che lo script venga eseguito con cadenza di dieci minuti, fare quanto segue:
vim /etc/cron.d/check_trunk
inserire in questo file le seguenti righe:
#check trunk */10 * * * * root /root/trunk.sh >/dev/null
N.B. questo script in casi di down della connettività potrebbe non funzionare correttamente perchè la macchina non sarebbe in grado di comunicare con my.nethesis.it per l'attivazione degli allarmi.