У меня следующая проблема, думаю многим пригодится её решение.
Есть задача настроить проверку SIP
Хочу настроить внешнюю проверку:
1. Задал в конфиге zabbix_server.conf
опцию ExternalScripts=/usr/local/share/zabbix/externalscripts
2. В папке /usr/local/share/zabbix/externalscripts
создал файл sip.sh и назначил ему необходимые права юзера zabbix
Скрипт получился корявенький, но работает:
Скрипт вызывается вот так: ./sipp IP TEL
При успешном звонке будет выведен 0, в противном случае 1
При запуске из консоли всё замечательно отрабатывает
3. Создал элемент данных:
Тип: Внешняя проверка
Ключ: sip.sh[xx.xx.xx.xx,number]
xx.xx.xx.xx - IP-адрес, потом планирую исправить на {HOST.CONN}, но пока указываю явно
number - номер телефона
Интерфейс узла сети: IP:10050 (там агента нет, поэтому порт игнорируется)
Тип информации: Числовой (целое положительное)
Тип данных: Десятичный
В итоге созданный элемент данных постоянно получает 1.
И в случае корректных данных (успешном звонке), и в случае неверных (если например выбрать другой IP или несуществующий номер телефона)
Куда копать не пойму. Может что-то упустил?
Буду признателен за помощь.
Есть задача настроить проверку SIP
Хочу настроить внешнюю проверку:
1. Задал в конфиге zabbix_server.conf
опцию ExternalScripts=/usr/local/share/zabbix/externalscripts
2. В папке /usr/local/share/zabbix/externalscripts
создал файл sip.sh и назначил ему необходимые права юзера zabbix
Скрипт получился корявенький, но работает:
Code:
#!/bin/sh
/usr/local/sbin/sipp $1 -sf /usr/local/share/zabbix/externalscripts/uac.xml -l 1 -m 1 -s $2 -recv_timeout 2000 &>/dev/null
if [ $? -eq 0 ];
then echo 0;
else echo 1;
fi
При успешном звонке будет выведен 0, в противном случае 1
При запуске из консоли всё замечательно отрабатывает
3. Создал элемент данных:
Тип: Внешняя проверка
Ключ: sip.sh[xx.xx.xx.xx,number]
xx.xx.xx.xx - IP-адрес, потом планирую исправить на {HOST.CONN}, но пока указываю явно
number - номер телефона
Интерфейс узла сети: IP:10050 (там агента нет, поэтому порт игнорируется)
Тип информации: Числовой (целое положительное)
Тип данных: Десятичный
В итоге созданный элемент данных постоянно получает 1.
И в случае корректных данных (успешном звонке), и в случае неверных (если например выбрать другой IP или несуществующий номер телефона)
Куда копать не пойму. Может что-то упустил?
Буду признателен за помощь.
Comment