Я пытался создать простое предупреждение о неработающем интерфейсе на коммутаторах dell s4810, используя «traphandle» NET-SNMP. Мне было интересно, как можно передать скрипту информацию об уведомлении, чтобы я мог анализировать текст? Я могу активировать сценарий, но не могу передать уведомление. Может, есть хороший модуль на Python или Perl? Буду признателен за любой совет или предложение.
Когда вы получаете ловушку SNMP, демон snmptrapd пересылает эту ловушку внешней программе (обычно это ваш сценарий).
snmptrapd добавит несколько аргументов (IP-адрес, имя хоста, уведомление, OID), которые будут отправлены в стандартный ввод вашего скрипта.
Пример сценария, который получает ловушку, этот сценарий от http://net-snmp.sourceforge.net/wiki/index.php/TUT:Configuring_snmptrapd:
#!/bin/sh
read host
read ip
vars=
while read oid val
do
if [ "$vars" = "" ]
then
vars="$oid = $val"
else
vars="$vars, $oid = $val"
fi
done
echo trap: $1 $host $ip $vars
Этот скрипт получит аргументы демона snmptrapd и отобразит их. Таким образом, вы можете добавить команду для экспорта в файл, чтобы проверить, работает ли ваша конфигурация.