重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
考虑对生产环境所有SQL Server服务器开启数据库邮件功能,它是数据库自带的邮件发送功能,通过配置到邮件服务器的访问,及时接收SQL Server事件告警。
创新互联公司主营沿河网站建设的网络公司,主营网站建设方案,重庆APP软件开发,沿河h5重庆小程序开发搭建,沿河网站营销推广欢迎沿河等地区企业咨询SQL Server警报是基于引擎的事件通知机制发送告警,当事件发生时出发告警通知。
现阶段,需要收集如下两类SQL Server事件告警:
Severity - 事件严重性级别13到25告警;
Error Number - 包括操作系统错误、IO错误、内存错误、AlwaysOn状态相关告警。
策略调整
我们考虑将这些需要监控的告警整合到应用程序日志,接入ELK日志分析系统。
我们了解到,在下列情况下,SQL Server 和 SQL Server 应用程序产生的错误/消息将发送到Windows 应用程序日志:
严重级别为 19 或更高的 sys.messages 错误
任何使用 WITH LOG 语法调用的 RAISERROR 语句
所有使用 sp_altermessage 修改或创建的 sys.messages 错误
所有使用 xp_logevent 记录的日志事件
引用自 https://docs.microsoft.com/en-us/sql/ssms/agent/create-an-alert-using-severity-level“Severity levels from 19 through 25 send a SQL Server message to the Microsoft Windows application log and trigger an alert. Events with severity levels less than 19 will trigger alerts only if you have used sp_altermessage, RAISERROR WITH LOG, or xp_logevent to force them to be written to the Windows application log. ”
针对上文提到、我们需要监控的Severity和Error Number告警,我们需要做如下变更调整:
Severity - 经过讨论,不记录严重级别19以下的用户级别的错误,19级别及以上的Fatal Error默认记录到应用程序日志,我们不用做任何更改。
Error Number - 需要监控的错误,根据附件的查询结果,部分错误号的is_event_logged字段为0,表示没有记录到应用程序日志。可以通过上面的sp_altermessage修改该字段为1达到记录到应用程序日志的目的。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。