报警不但可以及时提示错误,还可以预防潜在的风险,大概应该有如下功能:
1. 错误数据报警
2. 性能数据报警
3. 数据库运行趋势报警(性能趋势、空间趋势、交易趋势等)
为了实现如上功能,我通过plsql+shell脚本实现,通过email和短信的方式报警。
报警机制:(短信或email)
模式:本地报警+监控中心报警模式
技术:Plsql和shell脚本
A:os层:性能数据,故障数据
B:db层:性能数据,故障数据
A:os层:性能数据,故障数据
Os层粗粒度监控:通过监控os的load和db连接数来报警发email或短信
Os层细粒度监控:通过监控os的swap,iops,throught,pagein/out,network等报警发email或短信。
B:db层:性能数据,故障数据
DB故障监控:JOB,alertlog,checkpoit,表空间,dg,rac等,通过本地部署脚本短信报警
DB性能监控:连接数、事务数、读写比例、归档量、sql数量与执行次数、空间使用率等,监控中心分析收集信息定时email发周报,预测数据库近一周使用情况。
说明:
DB层性能监控原理:监控端部署收集信息脚本,定时把监控数据发送到监控中心45,监控中心45通过分析脚本,完成周报的发送。
根据信息影响范围,把报警分为三级
info:提示信息报警,对业务无任何影响,可以在方便的时间处理
waring:警告信息报警,紧急度不是很高,但也要及时处理,避免恶化
error:错误信息报警,需立即处理
为了提高报警的准确度和避免报警麻木,对于info级别的报警采用提示与校验合并方法来保证。
A:第一次报警发短信或email
B:然后如果n(n>1)次连续报警,将报警自动升级(即info->waring,warning ->error)并短信或email
--转自