使用zabbix监控oracle表空间的操作流程

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/

0.概述

zabbix是一款极其强大的开源监控工具,下面我分享下zabbix如何监控表空间,跟着这个思路,监控其他项都是类似操作。

前提条件是你已经有了zabbix server和zabbix agent,且zabbix agent与oracle数据库运行在一台机器上面。

1.在agent上面准备脚本

a.定义查表空间使用率的脚本

/home/oracle/get_tablespace_usage.sh

#!/bin/bash # get tablespace usage source ~/.bash_profile function check { sqlplus -S “/ as sysdba” << EOF set linesize 200 pagesize 200 set feedback off heading off spool /tmp/tablespace.log select tablespace_name,round(used_percent) used_percent from dba_tablespace_usage_metrics; spool off quit EOF }; check &> /dev/null errors=`grep ERROR /tmp/tablespace.log | wc -l` if [ “$errors” -gt 0 ]; then echo “” > /tmp/tablespace.log fi

chown oracle: get_tablespace_usage.sh

chmod 755 get_tablespace_usage.sh

b.定义表空间自动发现的脚本

/etc/zabbix/scripts/discovery_tablespace.sh

#!/bin/bash # zabbix auto discovery oracle tablespace tablespaces=(`cat /tmp/tablespace.log | awk {print $1} | grep -v “^$”`) length=${#tablespaces[@]} printf “{n” printf t””data”:[” for ((i=0;i<$length;i++)) do printf “ntt{” printf “”{#TABLESPACE_NAME}”:”${tablespaces[$i]}”}” if [ $i -lt $[$length-1] ];then printf “,” fi done printf “nt]n” printf “}n”

chmod 755/etc/zabbix/scripts/discovery_tablespace.sh

c.定义表空间监控项脚本

/etc/zabbix/scripts/tablespace_check.sh

#!/bin/bash # oracle tablespace check TABLESPACE_NAME=$1 grep “b$TABLESPACE_NAMEb” /tmp/tablespace.log | awk {print $2}

chmod 755/etc/zabbix/scripts/tablespace_check.sh

2.将脚本a放入crontab里面

su – oracle

crontab -e

*/5 * * * * /home/oracle/get_tablespace_usage.sh

执行的结果查看/tmp/tablespace.log,第一列是表空间的名字,第二列是对应的表空间使用率

EXAMPLE 2 SYSAUX 3 SYSTEM 5 TBS01 85 TEMP 0 UNDOTBS1 0 USERS 1

3.编辑agent参数

vi /etc/zabbix/zabbix_agentd.d/userparameter_oracle.conf

# tablespace usage

UserParameter=discovery.tablespace,/etc/zabbix/scripts/discovery_tablespace.sh

UserParameter=tablespace.check.[*],/etc/zabbix/scripts/tablespace_check.sh $1

4.在zabbix web界面中设置相关选项

a.创建模板,模板名字随便起,这里我定义了一个宏

使用zabbix监控oracle表空间的操作流程插图

b.创建自动发现规则

使用zabbix监控oracle表空间的操作流程插图1

c.创建监控项原型

使用zabbix监控oracle表空间的操作流程插图2

d.创建触发器类型

使用zabbix监控oracle表空间的操作流程插图3

e.创建图形原型

使用zabbix监控oracle表空间的操作流程插图4

5.测试

我将一个表空间创建表,并插入数据,使其超过80%,看其是否报警

使用zabbix监控oracle表空间的操作流程插图5

使用zabbix监控oracle表空间的操作流程插图6

测试通过!

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容