zoukankan      html  css  js  c++  java
  • Zabbix添加自定义监控项(一)

    前言:由于Zabbix提供的项目和模板有限,有时我们需要自定义监控项,下面以监控磁盘I/O使用率为例,创建自动发现规则,并配置图形。

    (1)Zabbix_agentd端自动发现脚本,zabbix要求返回的数据为json格式。

    自动发现磁盘,这里有sd和md开头的,根据需求修改脚本去过滤出磁盘:

    运行:/usr/local/etc/disk_io_check.sh disk_count

    脚本摘自网络,可自行修改,或用其他语言编写也可以。

    # vim /usr/local/etc/disk_io_check.sh
    #!/bin/sh
    #disk_io monitor
    disk=$2
    function disk_count {
    diskarray=(`cat /proc/diskstats | grep -E "[s|m]d[a-z|0]| 
    xvd[a-z]|cciss/c[0-9]d[0-9]" | grep -i "$1" 
    |awk '{print $3}' | sort|uniq 2>/dev/null`)
    length=${#diskarray[@]}
    printf "{
    "
    printf '	'""data":["
    for ((i=0;i<$length;i++));do
    printf '
    		{'
    printf ""{#DISK_NAME}":"${diskarray[$i]}"}"
    if [ $i -lt $[$length-1] ];then
    printf ','
    fi
    done
    printf "
    	]
    "
    printf "}
    "
    }
    function qps {
    qps=$(iostat $disk -x 1 2 | grep -E "^sd|^cciss|md" | awk '{if(NR==2)print $NF}')
    echo $qps
    }
    $1
    
    exit 0
    

    (2)采集数据脚本:

    也是上面的脚本/usr/local/etc/disk_io_check.sh qps

    (3)配置zabbix_agentd.conf

    # cat /etc/zabbix/zabbix_agentd.d/disk_io.conf
    
    UserParameter=iostat.count,/usr/local/etc/disk_io_check.sh disk_count
    
    UserParameter=iostat.util[*],/usr/local/etc/disk_io_check.sh qps $1
    

    (4)重启zabbix_agentd

    killall zabbix_agentd;./zabbix_agentd
    

    (5)Zabbix_server端测试:返回预知的数据,则脚本和配置OK

    # /usr/local/zabbix-2.2.2/bin/zabbix_get -s XXX.XXX.XXX.XXX -p 10050 -k 'iostat.count'
    
    {
    
           "data":[
    
                  {"{#DISK_NAME}":"md0"},
    
                  {"{#DISK_NAME}":"sda"},
    
                  {"{#DISK_NAME}":"sdb"},
    
                  {"{#DISK_NAME}":"sdc"},
    
                  {"{#DISK_NAME}":"sdd"}
    
           ]
    
    }
    
     
    
    # /usr/local/zabbix-2.2.2/bin/zabbix_get -s xxx.xxx.xxx.xxx -p 10050 -k 'iostat.util[sdc]'
    
    2.50
    

    (6)在模板中配置自动发现:

    配置项目原型:

    (7)在主机或模板中配置图形:

     

    下面是数据采集一段时间后的图形:

     

    至此,自动发现配置完毕。

    注意点:(1)键值要对应起来(2)自动发现返回的数据为json格式

  • 相关阅读:
    android 多线程
    Uva 10881 Piotr’s Ants 蚂蚁
    LA 3708 Graveyard 墓地雕塑 NEERC 2006
    UVa 11300 Spreading the Wealth 分金币
    UVa 11729 Commando War 突击战
    UVa 11292 The Dragon of Loowater 勇者斗恶龙
    HDU 4162 Shape Number
    HDU 1869 六度分离
    HDU 1041 Computer Transformation
    利用可变参数函数清空多个数组
  • 原文地址:https://www.cnblogs.com/jjzd/p/6474193.html
Copyright © 2011-2022 走看看