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="Asterisk 1.4.10.1"      # Checkstring "core show version"
MANAGERSERVER="IP-ADDR"          # zustaendiger $MANAGERSERVER 
 
# dont change anything below
 
MESSAGE="All went down the river"
 
RESULT=`asterisk -r -x "core show version"`
echo $RESULT | grep "$VERSION" > /dev/null
RUNNING=`echo $?`
 
if [ "x$RUNNING" = "x0"  ]; then
  MESSAGE="OK - $VERSION running"
else
  echo "ERROR Asterisk is critical"
  exit 1
fi
 
RESULT=`asterisk -r -x "manager show connected" | grep "$MANAGERSERVER" | wc -l`
if [ "$RESULT" -gt "0" ]; then
  MESSAGE="$MESSAGE - $RESULT ecs-managers connected"
else
  echo "ERROR - No application managers connected (Restart Application!)"
  exit 1
fi
 
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