• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    SQL Server Alert发送告警邮件少了的原因

    最近突然发现我们部署在数据库上面的告警(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 2005 出现警告 32位ASP.NET已经注册,需要注册64位的解决方法
    • Sql server 2005安装时ASP.Net版本注册要求警告的解决方法
    • SQLSERVERAGENT警告:事件 ID: 312
    • 安装SqlServer2005时版本变更检查 (警告)
    • win2008下安装SQL SERVER 2005出现IIS功能要求 警告解决方案
    • SQL Server 版本变更检查 警告
    上一篇:MySQL 数据库 source 命令详解及实例
    下一篇:分享一下SQL Server执行动态SQL的正确方式
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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