Skip to main content

Asterisk-Server via SNMP überwachen

  • Dieses Script in /etc/snmp/check-asterisk-alive ablegen:
#!/bin/bash
 
 #
#
# 2007 Oliver Voelker <wiki(at)magenbrot.net>
#
 
 
# Der Asterisk wird durch einen Manager-Server gesteuert, der via rasterisk-Console dort eingeloggt ist.
# Sollte der Managerserver nicht verbunden sein wird alarmiert
 
 
VERSION=VERSION="Asterisk 1.4.10.1"      # Checkstring "core show version"
MANAGERSERVER=MANAGERSERVER="IP-ADDR"          # zustaendiger $MANAGERSERVER 
 

 
# dont change anything below
 
 
MESSAGE=MESSAGE="All went down the river"
 
 
RESULT=RESULT=`asterisk -r -x "core show version"`
echo $RESULT | grep "$VERSION"VERSION" > /dev/dev/null
RUNNING=RUNNING=`echo $?`
 
 if if[ [ "x$RUNNING"x$RUNNING" = "x0"  ]; then
  MESSAGE=MESSAGE="OK - $VERSION running"
else
  echo "ERROR Asterisk is critical"
  exit 1
fi
 
 
RESULT=RESULT=`asterisk -r -x "manager show connected" | grep "$MANAGERSERVER"MANAGERSERVER" | wc -l`l`
if [ "$RESULT"RESULT" -gt "0" ]; then
  MESSAGE=MESSAGE="$MESSAGE - $RESULT ecs-managers connected"
else
  echo "ERROR - No application managers connected (Restart Application!)"
  exit 1
fi
 
 echo echo $MESSAGE
  • in /etc/snmp/snmpd.local.conf folgendes ergänzen:
exec .1.3.6.1.4.1.2021.59 ASTERISK /usr/bin/sudo /etc/snmp/check_asterisk_alive
  • Dies lässt sich nun via Nagios überwachen:
/usr/lib/nagios/plugins/check_snmp -H asterisk.mein-server.de -t 30 -o enterprises.ucdavis.59.101.1 -C public