码迷,mamicode.com
首页 > 数据库 > 详细

Sqlserver存储过程生成并发送HTML监控报告

时间:2018-07-27 19:26:24      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:监控   vpd   维数   计划任务   存储过程   ESS   网站   数据库数据   roc   

背景

计划任务会在每天凌晨进行数据处理,这个过程正常情况大约耗时6-7小时。在每天9点前需要保证所有的数据全部完成处理,这是一个deadline。如果未完成,表示当天运维出现事故,影响到了客户。
在初期,若某个数据库数据处理失败,会发送报警邮件,当报警邮件多起来,从邮件中确认哪个数据库处理失败,无疑是一件困难的事情。
于是通过编写存储过程,将所有的DB数据处理情况全部监控起来,每天发送一封html 格式的报告,这样就可以快速准确的知道数据处理状态。

最终效果

  • 下图中是数据库服务器列表,一台数据库服务器可以创建多个数据库,每个Profile都是一个DB。

技术分享图片

实现方式

  • 上图表格中的结果,依赖于运维数据库中的一张表ProcessDurationReport,这张表里的记录是程序在处理每个数据库时,将处理的耗时情况写入,我们再通过SQL把表里的信息进行计算汇总,最后拼接成html页面,通过Sqlserver的邮件服务发送出去。

  • 表结构如下
    技术分享图片

  • 相关的存储过程如下
    技术分享图片

  • 相关的存储过程链接

写在最后

此功能的实现,意味着简化运维操作,每天可以通过查看报告来确定数据处理状态。
也可以在此基础上继续进行改进,变为一个小型网站,实时的将处理状态展示出来。
也可以增加其他功能,将历史的数据处理状态进行展示。

Sqlserver存储过程生成并发送HTML监控报告

标签:监控   vpd   维数   计划任务   存储过程   ESS   网站   数据库数据   roc   

原文地址:http://blog.51cto.com/5109252/2151234

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!