暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Goldengate短信监控方案实战

广州天凯信息科技有限公司 2021-06-10
852


数据库运维服务



公司简介

广州天凯信息科技有限公司是一家专注于综合IT服务提供商的技术服务企业,注册资金100W,主要以提供数据库技术服务为主,包括Oracle,Mysql,Sqlserver等数据库运维与优化服务。同时也提供各行业软件开发与系统集成服务,包括thinkPHP5.0,django2.0等框架网站开发,微信小程序开发,系统集成运维,网络规划等专业服务。为保障企业IT信息系统的高效稳定运行,提供高品质,高效率的专业技术服务。

广州天凯信息科技有限公司为广州专业的IT服务提供商,拥有资深专业的技术专家,技术专家具有8年以上企业数据库运维与开发经验,服务行业包括移动,金融,税务,电子商务等关键行业,长期与国内知名企业合作,包括人人聚财,杭州图软,深圳安车等大型企业。我们的服务宗旨是“专业,诚信,可靠”,同时我们的优势是,助企业低成本获得高效服务。

      广州天凯信息科技有限公司锐始终追求卓越的服务品质,以保障客户的IT信息系统高效稳定运行为已任,愿以我们丰富的管理经验,诚信可靠的服务意识和强大的技术队伍为中国各企业单位在公司快速发展的道路上保驾护航。



1在LINUX下部署goldengate短信监控


-- 创建短信表

create table dba_ftc.SEND_MSG

(

MSG_ID     NUMBER(20) not null,

IPADDRESS  VARCHAR2(200),

CREATETIME DATE,

CONTENT    VARCHAR2(1000)

)

-- Create/Recreate primary, unique and foreign key constraints (增加主键)

alter table dba_ftc.SEND_MSG

add constraint PK_SEND_MSG primary key (MSG_ID)

using index ;

--ogg monitor script(OGG监控脚本,部署在LINUX的crontab任务下):

#/bin/sh

. /home/oracle/.bash_profile

#获得OGG进程状态并写入临时日志文件

echo "info all" |/ogg/software/ggsci|tail -n 34|sed 's/^GG.*//' > /tmp/ogg_monitor.log


#捕获ABEND或STOPPED的ogg进程

ogg_monitor=`egrep 'ABEND|STOPPED' /tmp/ogg_monitor.log`

 if [ ! $ogg_monitor ]; then

            echo "IS NULL"

        else

/opt/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus sms_link/*******k@erptar3 << EOF

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'18988968178','${ogg_monitor}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13729826939','${ogg_monitor}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13926108245','${ogg_monitor}',10,sysdate from DUAL ;

commit;

exit

EOF

fi

#判断OGG延时情况

Lag_value=30

Time_value=30

while read line

do

echo $line 

        Lag_time=`echo $line |awk '{print $4}'|awk -F':' '{print $2}'`

        Time=`echo $line |awk '{print $5}'|awk -F':' '{print $2}'`

        if [[ $Lag_time -gt $Lag_value ]] || [[ $Time -gt $Time_value ]];then

/opt/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus sms_link/******k@erptar3 << EOF

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'18988968178','${line}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13729826939','${line}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13926108245','${line}',10,sysdate from DUAL ;

commit;

exit

EOF

        fi

done  </tmp/ogg_monitor.log


2在WINDOWS下部署goldengate短信监控


$ogg_info="info all"|D:\ogg\software\ggsci

$ogg_monitor=echo $ogg_info[-34..-1]|select-string -pattern "^(MANAGER|REPLICAT).*(ABEND|STOPPED).*\s*$"

#$ogg_monitor=echo $ogg_info[-34..-1]|select-string -pattern "^(MANAGER|REPLICAT).*"

if(!$ogg_monitor){echo "is Null"} else{

$message="

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'18988968178','${ogg_monitor}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13729826939','${ogg_monitor}',10,sysdate from DUAL ;

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,'13926108245','${ogg_monitor}',10,sysdate from DUAL ;

commit;

exit

"

echo $message|D:\u01\product\11.2.0\dbhome_1\BIN\sqlplus.exe sms_link/******@erptar3

}

$ogg_info="info all"|D:\ogg\software\ggsci

$ogg_monitor=echo $ogg_info[-34..-1]|select-string -pattern "^(MANAGER|REPLICAT).*(ABEND|STOPPED).*\s*$"

#$ogg_monitor=echo $ogg_info[-34..-1]|select-string -pattern "^(MANAGER|REPLICAT).*"

if(!$ogg_monitor){echo "is Null"} else{

$message="

insert into mbs7_msg.msg_sendsms(SSID,STID,TEMPLETCODE,VERSIONCODE,CUSCODE,MOBILE,CONTENT,PRIORINDEX,CREATETIME)

select MBS7_MSG.SEQ_MSG_SENDSMS.NEXTVAL,0,'AlarmSms',0,0,m.phone,'10.1.8.209 '||'${ogg_monitor}',10,sysdate from mbs7_msg.msg_dbamonitor m;

commit;

exit

"

echo $message|D:\u01\product\11.2.0\dbhome_1\BIN\sqlplus.exe sms_link/*******@erptar3

}

外层调用

powershell D:\ogg\software\ogg_monitor.ps1


最后通过crontab或windows的调度任务调用即可,每15或30分钟执行一次,如部署过程有疑问,可随时与作者联系,加我请注明“来自公众号粉丝”!

天凯科技,为你提供专业IT服务

专业提供数据库运维

软件开发,微信小程序开发等服务

咨询QQ:282321952  手机/微信:13926108245




文章转载自广州天凯信息科技有限公司,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论