zoukankan      html  css  js  c++  java
  • zabbix批量监控端口

    目的:监控游戏项目中的重要tcp端口。
    实现:zabbix discovery模块+脚本
    思路:要监控的目标端口,统计有100个左右,先将监控目标记录到一个文本文件中,然后通过脚本将这些目标端口转成特定的字典格式,这种格式是zabbix可以识别的一种数据字典格式。

    因为监控的目标数量,决定了item 和trigger的数量,如果是手动去操作100个监控目标,在zabbix web 实现,效率很低。

    更快、更高效的实现批量端口监控,就要用到discovery模块(细节可以google,本文只讲实现)。

    重要部分展示:

    文本文件格式:

    [root@ip-172-30-0-57 script]# head socket.txt
    手游英语xxx网关 aa.bb.cc 37100
    手游英语xxxCDN源站 aa.bb.cc 80
    手游日语xxx登录 aa.bb.com 80
    手游日语xxxCDN源站 aa.bb.com 80

    脚本:

    [root@ip-172-30-0-57 script]# cat socket_status.sh
    #!/bin/bash
    #author:qinliang
    #date:3/23/2020

    UrlFile="/usr/local/zabbix_proxy/etc/script/socket.txt"
    IFS=$' '

    socket_discovery () {
    SOCKET_SITE=($(cat $UrlFile|grep -v "^#"))
    printf '{ '
    printf ' "data":[ '
    num=${#SOCKET_SITE[@]}
    for socket in ${SOCKET_SITE[@]}
    do
    num=$(( $num - 1 ))
    game=$(echo $socket|awk '{print $1}')
    ip=$(echo $socket|awk '{print $2}')
    port=$(echo $socket|awk '{print $3}')
    if [ $num -ne 0 ] ; then
    printf " {"{#SOCKETGAME}":"${game}","{#SOCKETIP}":"${ip}","{#SOCKETPORT}":""${port}""}, "
    else
    printf " {"{#SOCKETGAME}":"${game}","{#SOCKETIP}":"${ip}","{#SOCKETPORT}":""${port}""} "
    printf ' ] '
    printf '} '
    fi
    done
    }

    socket_discovery

    [root@ip-172-30-0-57 script]#

    脚本转换后的数据格式:

    [root@ip-172-30-0-57 script]# sh socket_status.sh
    {
    "data":[
    {"{#SOCKETGAME}":"手游xxx网关","{#SOCKETIP}":"aa.bb.cc","{#SOCKETPORT}":"37100"},
    {"{#SOCKETGAME}":"手游xxxCDN源站","{#SOCKETIP}":"aa.bb.cc","{#SOCKETPORT}":"80"},

    cat zabbix_agentd.d/socket_discovery.conf
    UserParameter=socket.discovery,bash /etc/zabbix/script/socket_status.sh

    zabbix web discovery模板配置:

    报警展示:

    End

  • 相关阅读:
    order by子句
    having和where的区别
    O2O模式为什么这么火
    高德----------百度地图
    list后台转化为JSON的方法ajax
    ajax中后台string转json
    ERROR: JDWP Unable to get JNI 1.2 environment, jvm->GetEnv() return code = -2
    压缩文件解压
    个人作业3——个人总结(Alpha阶段)
    第08周-集合与泛型
  • 原文地址:https://www.cnblogs.com/ccielife/p/12582374.html
Copyright © 2011-2022 走看看