azure - 如何在警报监视时间段之外的 Azure Log Analytics 中获取相应 IIS 停止日志的 IIS 启动日志

标签 azure iis azure-log-analytics azure-data-explorer kql

我正在配置 Azure Log Analytics 警报(使用 KQL)以捕获 OMS 工作区中的 IIS 停止和启动事件(来自 Events 表),并且如果警报查询发现对于特定的 IIS 停止事件日志,没有从 PaaS 角色生成相应的 IIS 启动事件日志 - 用户应该收到警报通知,以便他可以恢复 IIS。

问题:假设我将警报设置为运行时间段和频率为 15 分钟。如果警报在上午 10:30 触发,则意味着它将从上午 10:15:01 到上午 10:29:59 扫描 IIS 日志。现在,假设 IIS 停止事件在上午 10:28 左右登录,那么相应的 IIS 启动日志(如果有)将在几分钟后在上午 10:31 或 10:32 左右登录 - 因此它将消失超出警报的监控时间段。这将产生误报故障场景。 (IIS 重新启动,但我的警报未捕获启动事件日志)。因此,它可能会导致对我的 PaaS 角色进行一些不必要的 IIS 启动/重置操作。

附上有代表性的速写来形象地解释一下。

IIS_Start_Stop_Events_issue

请告诉我是否有任何可能的方法来实现这一目标。欢迎任何建议。提前致谢!

最佳答案

当前实现如下。

enter image description here

在这里我们可以看到 10:30 生成的虚假警报。

您可以看到下面的方法,我们每 5 分钟选择最近 10 分钟的数据(重叠)。

enter image description here

对于以下情况,您可以生成警报

enter image description here

看看是否对您有帮助。

关于azure - 如何在警报监视时间段之外的 Azure Log Analytics 中获取相应 IIS 停止日志的 IIS 启动日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62098560/

相关文章:

azure - 获取 403 : "Insufficient privileges to complete the operation." when attempting to query Graph API

sql-server - Azure Terraform 将 bacpac 导入 SQL Server 并禁用公共(public)网络访问

Azure SQL DB 编辑最大文本重复大小

azure - 无法将自定义日志添加到 Log Analytics

azure - 如何使用 Terraform 创建客户端 key ?

asp.net-mvc - 什么是 "IIS simulated HTTP requests"?

ASP.NET MVC + jQuery + IIS6 : Multiple Ajax requests

c# - 无法远程返回自定义 HTTP 错误详细信息

azure - 在 Log Analytics 中使用共享的用户定义的 Kusto 函数

azure - 来自 Kusto 查询的连接器名称