zabbix redis自动发现端口的脚本,返回json格式
admin
2023-02-26 21:41:33
0

在我们进行自动发现的时候,总会有一个脚本来获取端口等信息,并返回json格式,那以redis为例,下边是redis进行进行自动发现的脚本

redisport=(`ps aux|grep -w redis-server|grep -v "grep" |awk -F':' '{print $NF}'`)
portnum=${#redisport[@]}

count=`hostname | grep "\-SQ" | wc -l`
if [ $count -eq 1  ];then
address=` /usr/sbin/ip address | grep -w  "inet" | awk -F " " '{print $2}' | egrep "^10."| awk -F"/" '{print $1}'`
else
address=` /usr/sbin/ip address | grep "192.168" | awk '{print $2}' | awk -F "/" '{print $1}'`
fi

printf "{\n"
printf  '\t'"\"data\":["
for ((i=0;i<$portnum;i++))
do
        printf '\n\t\t{\n'
        printf '\t\t\t'
        printf "\"{#REDIS_PORT}\":\"${redisport[$i]}\"",
        printf '\n\t\t\t'
        printf "\"{#REDIS_ADDRESS}\":\"${address}"\",
        printf '\n\t\t\t'
        printf "\"{#REDIS_NAME}\":\"Redis ${address}:${redisport[$i]}\""
        printf '\n\t\t}'
        if [ $i -lt $[$portnum-1] ];then
                printf ','
        fi
done
printf  "\n\t]\n"
printf "}\n"

返回结果如下

{
        "data":[
                {
                        "{#REDIS_PORT}":"6386",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6386"
                },
                {
                        "{#REDIS_PORT}":"6387",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6387"
                },
                {
                        "{#REDIS_PORT}":"6388",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6388"
                },
                {
                        "{#REDIS_PORT}":"6379",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6379"
                },
                {
                        "{#REDIS_PORT}":"6384",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6384"
                },
                {
                        "{#REDIS_PORT}":"6385",
                        "{#REDIS_ADDRESS}":"192.168.43.66",
                        "{#REDIS_NAME}":"Redis 192.168.43.66:6385"
                }
        ]
}

相关内容

热门资讯

85岁剑桥教授,为何成了中国年... ·2026年6月,艾伦·麦克法兰在英国剑桥大学国王学院。(Muye.G/摄)(本文图片均由剑桥康河出...
西安造12英寸硅片月产销突破1... 12英寸电子级硅片是当前全球半导体产业链的紧缺关键材料。近日,记者从位于西安高新区的西安奕斯伟材料科...
把防人的墙筑太高,困住的可能是... 据新华社消息,近日OpenAI公司的两款大模型联合进行内部评估时失控,突破隔离测试环境,侵入了美国A...
三星Galaxy S27 Pr... IT之家 7 月 25 日消息,科技媒体 WinFuture 昨日(7 月 24 日)发布博文,分享...
郑丽文颁卢秀燕一等奖章,两人热... 中国国民党第22届第二次全代会25日上午登场,党主席郑丽文颁发实践一等奖章给即将卸任的党籍县市长,台...
AI、信息服务激活广东产业增长... 佛山市美的库卡智能制造科技园工业机器人产线车间。 掌握PCB钻针关键技术的广东鼎泰高科技术股份有限...
固态电池技术对汽车产业的影响有... 当前新能源汽车市场正处于快速变革期,消费者对于续航里程和安全性的要求日益严苛。传统液态锂离子电池在能...
台风“红霞”即将登陆,广东多地... 今年第12号台风“红霞”已于今天(25日)早晨由强热带风暴级加强为台风级。预计,该台风将于今天夜间至...
日本皇室恐上演养子夺嫡,麻生太... 澎湃新闻记者 陈沁涵日本政府7月24日正式公布修订后的《皇室典范》,核心在于确保足够的皇族人数。这是...
菲尔兹奖美国得主走红:会说中文... 当地时间7月23日,在美国费城举行的2026年国际数学家大会开幕式上,中国籍数学家王虹、邓煜获得菲尔...