Benjamin Zhang

目前就职于中科院计算机网络信息中心,主要兴趣集中在数据库,操作系统,中间件。

【zabbix】zabora添加监控Oracle的RMAN备份情况

04 Nov 2019 » zabbix

zabora添加监控Oracle的RMAN备份情况

需求

监控Oracle的RMAN备份情况,思路

  • 写一个sql语句,监控RMAN备份情况,返回0说明备份正常,1~4说明备份有问题。
  • 放入到zabora监控脚本中。
  • 通过zabbix调用监控RMAN备份情况的脚本。

1.添加监控RMAN备份的脚本

sql脚本的放置的目录为/etc/zabbix/scripts/agentd/zabora/sql。文件名为db_chk_rman.sql ,语句为:

SET      pagesize 0
SET      heading OFF
SET      feedback OFF
SET      verify OFF
select trim(decode (sum(ESTADO),0,0,null,4,1)) FROM ( 
   SELECT  TO_NUMBER (
            DECODE (STATUS,
                    'COMPLETED', 0,
                    'RUNNING', 0,
                    'COMPLETED WITH WARNINGS', 1,
                    'COMPLETED WITH ERRORS', 2,
                    3))
                                "ESTADO",
       SESSION_KEY, INPUT_TYPE, STATUS,
       TO_CHAR(START_TIME,'mm/dd/yy hh24:mi') start_time,
       TO_CHAR(END_TIME,'mm/dd/yy hh24:mi')   end_time,
       ELAPSED_SECONDS/3600                   hrs
       From V$RMAN_BACKUP_JOB_DETAILS where start_time  > SYSDATE -1);
QUIT;

2.使用zabora的shell调用上述脚本

[root@db sql]# /etc/zabbix/scripts/agentd/zabora/zabora.sh -o oradb -s db_chk_rman -a 0
4

上述4代表,没有做RMAN的备份。

3.zabbix-server调用db_chk_rman

[root@localhost ~]# zabbix_get -s 172.31.1.228 -k "zabora[oradb,db_chk_rman,1]"
4

如上,说明zabbix可以调用上述sql的脚本,可以配置到zabbix中,进行监控。