我们在 SQL Server 托管实例中模拟了一些错误日志。SQL Server 错误日志位于管理文件夹中。我有一个简单的要求,就是我只能通过日志分析工作区将这些错误日志流式传输到 Azure 门户。请参阅所附的屏幕截图。
请注意,我需要监控日志,当我收到该消息文本时,我需要通过 Azure 门户发出警报。
我正在尝试使用“添加诊断设置”功能将其流式传输到 Log Analytics 工作区,但找不到特定类别。我只能找到:
- 资源使用统计
- DevOps 运营审计日志
- SQL安全审计事件
我找不到错误日志,也无法使用 Azure 诊断 Kusto 查询进行查询。一旦我能够找到日志,Azure 门户将捕获日志条目并通过 Azure 监视器发出警报。
有人可以建议如何通过读取 SQLMI 中的错误日志通过 Azure 门户发出警报。
您可以构建自定义解决方案,例如创建一个扩展事件会话来捕获
error_reported
事件,然后让 SQL Server 代理作业从该 XEL 日志文件中读取并向 DBA 发出有关任何新项目的警报。我将尽快完成该解决方案(我们将需要它)。此外,您可以使用 Erik Darling
sp_LogHunter
扫描错误日志,并将所有新错误记录到表中,然后再次使用 SQL 作业通过电子邮件通知 DBA。但并非所有错误都记录到错误日志中(只有其中一些,请参阅 sys.messages)。但错误日志也可能包含一些无法通过 XEerror_reported
事件捕获的项目。