Zabbix3.2监控OGG延时

来源:互联网 发布:自助餐管理系统源码 编辑:程序博客网 时间:2024/06/06 23:56
一、OGG监控脚本采集1、获取OGG延时信息的原始脚本和自动发现脚本vim /home/oracle/local/bin/gg_zabbix.sh#!/bin/bash. /home/oracle/.bash_profilecd /u01/oracle/ggglog=`./ggsci << EOF info allexitEOF`>/tmp/gg_zabbix.logecho "${glog}" | awk 'NR==13,NR==21 {print ""$3","$4","$5}' > /tmp/gg_zabbix.logecho "${glog}" | awk -F"[ ]+|:" '/REPLICAT|EXTRACT/{print $3,$4,$5,$7,$8}'  > /tmp/gg_zabbix.log2、设置任务计划crontab -l*/1 * * * * /home/oracle/local/bin/gg_zabbix.sh3、权限问题vim /etc/sudoerszabbix ALL=(oracle) NOPASSWD: /etc/zabbix/shells/discovery_ogg.sh,/etc/zabbix/shells/chk_ogg,/home/oracle/local/bin/gg_zabbix.sh二、获取OGG抽取进程名下面是执行该脚本输出为json格式的OGG抽取进程名信息vim discovery_ogg.sh #!/bin/bash#zabbix discovery oracle oggogg=(`grep -R "$1" /tmp/gg_zabbix.log| awk '{print $1;}'`)length=${#ogg[@]}  printf "{\n"printf '\t'"\"data\":["for ((i=0;i<$length;i++))do    printf "\n\t\t{"    printf "\"{#OGG_DATA}\":\"${ogg[$i]}\"}"    if [ $i -lt $[$length-1] ];then        printf ","    fidone    printf "\n\t]\n"printf "}\n"三、OGG脚本输出的值为zabbix监控所取的数值vim chk_ogg#/bin/shOGG_DATA=$1OGG_COMMAND=$2case $OGG_COMMAND in         lag)          grep -R "$OGG_DATA" /tmp/gg_zabbix.log| awk '{print $2,$3;}'|sed 's/ //g'            ;;          time)          grep -R "$OGG_DATA" /tmp/gg_zabbix.log| awk '{print $4,$5;}'|sed 's/ //g'            ;;esac已改脚本为准(OGG延时时间转换)vim chk_ogg #/bin/shOGG_DATA=$1OGG_COMMAND=$2case $OGG_COMMAND in         lag)          grep -R "$OGG_DATA" /tmp/gg_zabbix.log| awk '{a=$2;b=$3} END{print a*60+b}'            ;;          time)          grep -R "$OGG_DATA" /tmp/gg_zabbix.log| awk '{a=$4;b=$5} END{print a*60+b}'            ;;          *)          echo -e "Usage: $0 [OGG_DATA][lag|time]"esac

 
原创粉丝点击