使用zabbix监控oracle的后台日志
本文将介绍如何使用zabbix监控oracle的后台日志,当oracle后台日志出现“ORA-”或“Error”时,第一时间将该信息报警出来
zabbix agent端
以下所有操作均用root执行
为oracle后台日志创建硬链接
直接使用zabbix去读取oracle后台日志报权限不足,因此通过创建硬链接方式绕过权限问题
cd /tmp
ln /u01/app/oracle/diag/rdbms/orcltest/orcltest/trace/alert_orcltest.log alert_orcltest.log
chmod 644 alert_orcltest.log
创建目录
mkdir -p /etc/zabbix/scripts
创建脚本
vi /etc/zabbix/scripts/alert.sh
#!/bin/bash
get_sum_rows() {
rows=`wc -l $1 | awk '{print $1}'`
echo $rows
} runfile=/tmp/tmp_alertrows.txt # 初始化runfile文件
if test -e $runfile; then
sleep 0.01
else
get_sum_rows $1 > /tmp/tmp_alertrows.txt
fi # 筛选日志中的ORA-和Error
prevrows=`cat /tmp/tmp_alertrows.txt`
prevrows=$(($prevrows+1))
tail -n +$prevrows $1 | egrep "^ORA-|^Error" # 每次脚本执行完之后,更新alert日志的总行数
get_sum_rows $1 > /tmp/tmp_alertrows.txt
chmod 755 /etc/zabbix/scripts/alert.sh
创建agent conf文件
vi /etc/zabbix/zabbix_agentd.d/userparameter_alert.conf
------------------------------------
UserParameter=ora.alert.[*],/etc/zabbix/scripts/alert.sh $1
------------------------------------
重启zabbix agent服务
service zabbix-agent restart
zabbix server端
测试监控项
zabbix_get -s 10.40.16.120 -k 'ora.alert.[/tmp/alert_orcltest.log]'
正常情况下返回空行,如果返回其他错误,根据错误提示去检查问题
在zabbix web页面中设置宏

添加监控项

添加触发器

测试
在数据库中模拟一个死锁出来,然后静静地等待zabbix报警

大功告成,其实过程还蛮简单的,监控其它类型的数据库的后台日志都可以按照这种方式去处理。不过此方式不适用于日志文件太大,否则脚本执行时间会比较久而导致超时,应该定期归档后台日志,使后台日志不至于太大。归档后台日志之后,手动删除/tmp/tmp_alertrows.txt和/tmp/alert_orcltest.log,重新给后台日志做个硬链接就行了。
使用zabbix监控oracle的后台日志的更多相关文章
- zabbix监控Oracle
		
可监控项 使用zabbix监控oracle数据库需要借助第三方的插件,目前使用较多的是orabbix.目前维护到了1.2.3版本.关于oracle自带的监控项目有以下几个: DB Version (i ...
 - Linux如何用脚本监控Oracle发送警告日志ORA-报错发送邮件
		
Linux如何用脚本监控Oracle发送警告日志ORA-报错发送邮件 前言 公司有购买的监控软件北塔系统监控,由于购买的版权中只包含了有限台数据库服务器的监控,所以只监控了比较重要的几台服务器. 后边 ...
 - 使用Zabbix监控Oracle数据库
		
Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...
 - 归档—监控ORACLE数据库告警日志
		
ORACLE的告警日志里面包含许多有用的信息,尤其是一些ORACLE的ORA错误信息,所以有必要及时归档.监控数据库告警日志的ORA错误,及时提醒数据库管理员DBA处理这些错误信息,那么我们首先来看看 ...
 - 利用zabbix监控oracle数据库
		
一.概述 zabbix是一款非常强大,同时也是应用最为广泛的开源监控软件,本文将给大家介绍如何利用zabbix监控oracle数据库. 二.环境介绍 以下是我安装的环境,实际部署时并不需要跟我的环境一 ...
 - 使用zabbix监控oracle表空间
		
0.概述 zabbix是一款极其强大的开源监控工具,下面我分享下zabbix如何监控表空间,跟着这个思路,监控其他项都是类似操作. 前提条件是你已经有了zabbix server和zabbix age ...
 - Zabbix监控oracle各服务器连接数
		
需求: 根据机器名查询oracle连接数,并通过zabbix进行监控 脚本: [root@rac1 Zabbix_S]# cat get_conns.py#!/usr/bin/python#codin ...
 - zabbix监控oracle之orabbix安装
		
zabbix服务器安装配置 zabbixserver中安装该软件 mkdir /opt/orabbix cp orabbix-1.2.3.zip /opt/orabbix cd /opt/orabbi ...
 - zabbix 监控 oracle 数据库
		
https://blog.csdn.net/dyllove98/article/details/41120853
 
随机推荐
- [译]Vulkan教程(07)物理设备和队列家族
			
[译]Vulkan教程(07)物理设备和队列家族 Selecting a physical device 选择一个物理设备 After initializing the Vulkan library ...
 - Docker和ASP.NET Core
			
Docker和ASP.NET Core Docker 正在逐渐成为容器行业的事实标准,受到 Windows 和 Linux 生态系统领域最重要供应商的支持. (Microsoft 是支持 Docker ...
 - celery beat - 心跳包
			
celery -A 项目名 beat -l info -S django# 启动心跳任务 celery -A 项目名 worker -l info # 启动1个worker去执行
 - linux自建https证书
			
一.生成单向认证的https证书 建立服务器私钥,生成RSA秘钥. 会有两次要求输入密码, 然后获得了一个server.key文件. 以后使用此文件(通过openssl提供的命令或API)可能经常回要 ...
 - Cypress 之 环境配置
			
将项目添加到cypress时,cypress.json会在项目中创建一个文件,此文件用于存储projectId,以及你提供的任何配置项. { "projectId": " ...
 - [WPF 自定义控件]让Form在加载后自动获得焦点
			
1. 需求 加载后让第一个输入框或者焦点是个很基本的功能,典型的如"登录"对话框.一般来说"登录"对话框加载后"用户名"应该马上获得焦点,用 ...
 - Go-获取变量数据类型
			
package main import ( "fmt" "reflect" //这个包里的TypeOf方法获取变量数据类型 ) func main(){ b : ...
 - .WrongArgumentException: Malformed database URL, failed to parse the connection string near ';characterEncoding=UTF-8&;serverTimezone=Asia/Shanghai'.)
			
连接mysql库报的异常信息: org.springframework.transaction.CannotCreateTransactionException: Could not open JDB ...
 - [Spring]:java.lang.NoSuchMethodError: 'java.lang.String javax.annotation.Resource.lookup()'
			
错误信息 11月 05, 2019 9:32:15 下午 org.springframework.test.context.TestContextManager prepareTestInstance ...
 - Linux安装docker-compose
			
下载:curl -L https://get.daocloud.io/docker/compose/releases/download/1.16.1/docker-compose-`uname -s` ...