【ZABBIX】监控ogg运行状况
##编写如下脚本,添加crontab任务,定时获取ogg进程信息
#!/bin/bash . /home/oracle/.bash_profile cd /cdcdata/ogg_yms glog=`./ggsci >/tmp/gg_zabbix.log<< EOF info all exit view params mgr EOF` cat /tmp/gg_zabbix.log|awk -F"[ ]+|:" '/REPLICAT|EXTRACT/{print $3,$4,$5,$6,$7,$8,$9,$2}'>/tmp/gg_zabbix1.log echo "*************************************************">>/tmp/gg_zabbix1_history.log date>>/tmp/gg_zabbix1_history.log cat /tmp/gg_zabbix1.log>>/tmp/gg_zabbix1_history.log echo "">>/tmp/gg_zabbix1_history.log
##在zabbix 配置文件里,添加如下内容:
##UserParameter=ora.ogg.discovery,/usr/local/zabbix-3.4.6/scripts/discovery_ogg.sh
##UserParameter=oggcheck[*],/usr/local/zabbix-3.4.6/scripts/chk_gg.sh $1 $2
#!/bin/bash #zabbix discovery oracle ogg ogg=`cat /tmp/gg_zabbix.log | awk '/REPLICAT|EXTRACT/{print $3}'` COUNT=`echo "$ogg" |wc -l` INDEX=0 echo '{"data":[' echo "$ogg" | while read LINE; do echo -n '{"{#OGG_DATA}":"'$LINE'"}' INDEX=`expr $INDEX + 1` if [ $INDEX -lt $COUNT ]; then echo ',' fi done echo ']}'
#/bin/sh OGG_DATA=$1 OGG_COMMAND=$2 file_name=/tmp/gg_zabbix1.log case $OGG_COMMAND in lag)grep "$OGG_DATA" $file_name| awk '{if($2=="unknown"){print 0}else{print $2*60*60+$3*60+$4}}' ;; time)grep "$OGG_DATA" $file_name| awk '{if($(NF-1)=="unknown"){print 0}else{print $(NF-3)*60*60+$(NF-2)*60+$(NF-1)}}' ;; status)grep "$OGG_DATA" $file_name| awk '{if($NF=="RUNNING"){print 1}else{print 0}}' ;; *)echo "Usage: $0 [OGG_DATA][lag|time]" esac




浙公网安备 33010602011771号