/usr/lib/zabbix/externalscripts
/etc/zabbix/zabbix_agentd.d
/usr/local/zabbix/share/zabbix/externalscripts
/usr/local/zabbix/etc/zabbix_agentd.conf.d
#!/bin/bash
id=$(snmpwalk -v 2c -c limi@2018 10.200.250.5 1.3.6.1.4.1.2011.6.139.13.3.10.1.5 | cut -f1 -d"=" | cut -f10 -d".")
id_array=(${id})
sum=$(snmpwalk -v 2c -c limi@2018 10.200.250.5 1.3.6.1.4.1.2011.6.139.13.3.10.1.5 | wc -l)
name=$(snmpwalk -v 2c -c limi@2018 10.200.250.5 enterprises.2011.6.139.13.3.10.1.5 | awk '{print $4}' | sed 's/"//g')
name_array=($name)
printf '{"data":[ '
for ((i=0; i<$sum; i++))
do
printf "{\"{#APID}\":\"${id_array[$i]}\",\"{#APNAME}\":\"${name_array[$i]}\" }"
if [ $i -lt $[ $sum - 1 ] ]; then
printf ','
fi
done
printf " ]}"
#!/bin/env python3
import subprocess
import json
def ApList():
CMD = "snmpwalk -v 2c -c limi@2018 10.200.250.5 1.3.6.1.4.1.2011.6.139.13.3.10.1.5"
Result_str = subprocess.getoutput(CMD)
tmp_list = Result_str.split("\n")
ap_dict = {}
for line in tmp_list:
apName = eval(line.split(':')[3])
apId = line.split('=')[0].split('.')[9]
ap_dict[apId] = apName
return ap_dict
# if __name__ == "__main__":
Results = ApList()
aps = []
for apinfo in Results:
aps += [{'{#APID}': apinfo, '{#APNAME}': Results[apinfo]}]
print(json.dumps({'data': aps}, sort_keys=True, indent=4, separators=(',', ':')))
/etc/zabbix/zabbix_agentd.d
目录下创建 monitor_wlan.conf
文件。zabbix_agentd
的配置目录里面的脚本关系[root@zabbix /usr/local/zabbix/etc/zabbix_agentd.conf.d]# cat discoveryapid.conf
UserParameter=discovery_apid,/usr/local/zabbix/share/zabbix/externalscripts/apdiscovery.sh
UserParameter=discoveryapuser[*],/usr/local/zabbix/share/zabbix/externalscripts/apuser.sh $1
UserParameter=ap.status[*],/usr/local/zabbix/share/zabbix/externalscripts/ap_status.sh $1
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。