我有一个短信网关,可以通过bash脚本从zabbix调用发送警报。 要发送短信我使用http请求,如:
http://SERVERIP/EasyAdmin/SmsSender?login=LOGIN&password=PASSWORD&remote_id=ID&class0=0&phone=${1}&text=${2}
login,password,id和class是const
我有2个变量由zabbix转发 - 手机和文字
简单的脚本:
PHONE=$1
SUBJECT=$2
curl -i -H "Accept: application/xml" -X GET "http://10.151.92.151:9080/EasyAdmin/SmsSender?login=cortex_acs&password=cortex_acs&remote_id=2422&class0=0&phone=${PHONE}&text=${SUBJECT}"
exit 0
如果我在cmd中执行脚本,如./sms.sh phonenr tekst 一切都很好,但是当zabbix需要执行这个脚本时,变量为null
答案 0 :(得分:0)
是否分别设置了脚本的参数(在zabbix前端中)
与zabbix文档类似:
https://www.zabbix.com/documentation/3.4/manual/config/notifications/media/script
确保脚本权限(对于zabbix用户)并转到调试模式以获取有关日志文件的更多信息