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

2023-12-02 0 379

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 \”\\n\\t\\t{\”
printf \”\\\”{#TABLESPACE_NAME}\\\”:\\\”${tablespaces[$i]}\\\”}\”
if [ $i -lt $[$length-1] ];then
printf \”,\”
fi
done
printf \”\\n\\t]\\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_NAME\\b\” /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表空间的操作流程

c.创建监控项原型

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

d.创建触发器类型

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

e.创建图形原型

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

5.测试

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

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

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

测试通过!

到此这篇关于使用zabbix监控oracle表空间的操作流程的文章就介绍到这了,更多相关zabbix监控oracle表空间内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 zabbix 使用zabbix监控oracle表空间的操作流程 https://www.u-9.cn/server/zabbix/33817.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务