SQL Server Alert发送告警邮件少了的原因

发布时间 - 2026-01-11 02:00:48    点击率:

最近突然发现我们部署在数据库上面的告警(Alert),当错误日志里面出现错误时,并不是每个错误日志都会发送邮件出来。如下所示,设置了告警“SQL Server Severity Event 14” 

USE [msdb]
GO
 
 
IF NOT EXISTS(SELECT 1 FROM msdb.dbo.syscategories WHERE NAME='DBA_MONITORING' AND category_class=2)
BEGIN
 
EXEC msdb.dbo.sp_add_category
 @class=N'ALERT',
 @type=N'NONE',
 @name=N'DBA_MONITORING' ;
 
END
GO
 
IF EXISTS(SELECT name FROM msdb.dbo.sysalerts WHERE name= N'SQL Server Severity Event 14')
 
 EXEC msdb.dbo.sp_delete_alert @name=N'SQL Server Severity Event 14'
GO
 
 
EXEC msdb.dbo.sp_add_alert @name=N'SQL Server Severity Event 14',
  @message_id=0,
  @severity=14,
  @enabled=1,
  @delay_between_responses=60,
  @include_event_description_in=1,
  @category_name=N'DBA_MONITORING',
  @job_id=N'00000000-0000-0000-0000-000000000000'
GO
 
 
EXEC msdb.dbo.sp_add_notification @alert_name=N'SQL Server Severity Event 14', @operator_name=N'YourSQLDba_Operator', @notification_method = 1
GO

然后我尝试用sa登录(sa已经被禁用)了三次,但是我只收到了一封邮件。特意查看了一下sp_add_alert的官方文档,才知道出现这个原因,是因为参数@delay_between_responses的值设置缘故,通过设置该值,可以防止在在短时间内重复发送一些不需要的电子邮件。如上所示,一分钟内,即使错误日志里面出现了大量类似的错误,也只会发送一封告警邮件。其实只是为了减少发送告警的频率,如果你想当错误日志里出现这个级别的告警时,都必须发送告警邮件,可以将其值设置为0。但是有时候,如果设置为0,你会收到铺天盖地的邮件。其实这个小问题,只是因为以前没有特意留意这个参数而已。存粹属于没有彻底了解这些功能罢了。

警报响应之间的等待时间 (以秒为单位)。delay_between_responsesis int, 默认值为 0, 这意味着在响应之间没有等待 (每次出现警报都会生成响应)。响应可以是在以下两种形式中的一个, 或者都是:
通过电子邮件或寻呼机发送的一个或多个通知。
要执行的作业。
通过设置此值, 可以防止例如, 在短时间内重复发生警报时发送不需要的电子邮件。 

参考资料: 

https://docs.microsoft.com/zh-cn/sql/relational-databases/system-stored-procedures/sp-add-alert-transact-sql

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# SQL  # Server  # Alert发送告警邮件  # Severity  # Event  # 14  # Alert  # 安装SQL server 2005 出现警告 32位ASP.NET已经注册  # 需要注册64位的解决方法  # Sql server 2005安装时ASP.Net版本注册要求警告的解决方法  # SQLSERVERAGENT警告:事件 ID: 312  # 安装SqlServer2005时版本变更检查 (警告)  # win2008下安装SQL SERVER 2005出现IIS功能要求 警告解决方案  # SQL Server 版本变更检查 警告  # 不需要  # 时间内  # 电子邮件  # 所示  # 一封  # 设置为  # 可以防止  # 都是  # 是在  # 是因为  # 看了  # 多个  # 你会  # 两种  # 你想  # 将其  # 只会  # 才知道  # 参考资料  # 铺天盖地 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: js实现点击每个li节点,都弹出其文本值及修改  如何打造高效商业网站?建站目的决定转化率  如何快速上传自定义模板至建站之星?  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  Laravel用户密码怎么加密_Laravel Hash门面使用教程  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  C#如何调用原生C++ COM对象详解  JavaScript如何实现类型判断_typeof和instanceof有什么区别  进行网站优化必须要坚持的四大原则  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  ,网页ppt怎么弄成自己的ppt?  打造顶配客厅影院,这份100寸电视推荐名单请查收  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  常州企业网站制作公司,全国继续教育网怎么登录?  简历在线制作网站免费版,如何创建个人简历?  SQL查询语句优化的实用方法总结  如何快速查询网站的真实建站时间?  制作企业网站建设方案,怎样建设一个公司网站?  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  javascript基本数据类型及类型检测常用方法小结  Laravel Docker环境搭建教程_Laravel Sail使用指南  如何在香港服务器上快速搭建免备案网站?  phpredis提高消息队列的实时性方法(推荐)  如何用搬瓦工VPS快速搭建个人网站?  在centOS 7安装mysql 5.7的详细教程  如何在IIS7中新建站点?详细步骤解析  如何为不同团队 ID 动态生成多个“认领值班”按钮  如何自定义建站之星网站的导航菜单样式?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  网易LOFTER官网链接 老福特网页版登录地址  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何用腾讯建站主机快速创建免费网站?  无锡营销型网站制作公司,无锡网选车牌流程?  Laravel如何实现文件上传和存储?(本地与S3配置)  Laravel如何处理文件下载请求?(Response示例)  Laravel如何处理异常和错误?(Handler示例)  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  如何彻底卸载建站之星软件?  网站页面设计需要考虑到这些问题  iOS正则表达式验证手机号、邮箱、身份证号等  如何快速搭建高效简练网站?  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  html5的keygen标签为什么废弃_替代方案说明【解答】  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出