azure - Azure Monitor 自定义日志搜索查询 - 了解周期和频率
问题描述
更新:
实际问题与我所描述的不同。一旦我们解决问题,我将提供并更新/编辑此票证。可以在此线程中找到更多详细信息 - https://techcommunity.microsoft.com/t5/Azure-Log-Analytics/Reliably-trigger-alerts-for-Log-Analytics-log-entries/mp/319315/highlight/false #M1224
原始问题:
我们用于Azure Monitor
根据登录创建警报Log Analytics
。为此,我们选择我们的 Log Analytics 帐户作为“资源”,然后为“条件”选择“自定义日志搜索”信号名称。警报逻辑 - “结果数大于 0”。
示例查询:
search *
| where ResourceProvider == "MICROSOFT.DATAFACTORY" and status_s == "Failed"
Period
让Frequency
我们设置15
分钟。一切看起来很简单,但是...
问题:上述设置不起作用(有时会起作用),因为警报仅在某些时候触发,其中很多都被遗漏了,这是完全不可接受的行为。
如果我们设置Period = Frequency = 5
分钟,我们基本上会错过几乎所有的事件。Period = Frequency = 15
分钟效果更好,但仍然缺少很多事件。Period = Frequency = 30
效果更好,但这一切看起来很奇怪。
重要通知- 日志是从Data Factory V2
into收集的Log Analytics
。我怀疑警报未命中是由于日志的传递Log Analytics
有一些延迟(最多几分钟)。因此,当Azure Monitor
评估最后15
几分钟的警报查询 ( Period=15
) 时,可能是大多数重新发送的日志条目仍然不在Log Analytics
. 15
当在几分钟内执行下一个查询评估时,它将错过因 prev 15
minutes interval延迟而进入的日志。这个假设正确吗?如果是这样,这很奇怪 - 那么我们应该如何配置Period
和Frequency
值?如果我设置Period > Frequency
(例如Period = 30
和Frequency = 5,
这意味着“每 5 分钟评估一次表达式,从当前时间获取最后 30 分钟的数据”)然后我们会收到多个重复的警报,因为Period
大于Frequency
所以日志搜索查询很有可能每5
分钟返回相同的日志条目 - 这是非常不受欢迎的行为。
解决方案
问题恰好与 ARM 模板创建警报的错误行为有关。感谢 Stanislav Zhelyazkov,它已被确定并解决 - 我现在使用替代 ARM API,它似乎工作正常。可以在此处找到有关该主题的更多详细信息 - https://techcommunity.microsoft.com/t5/Azure-Log-Analytics/Reliably-trigger-alerts-for-Log-Analytics-log-entries/mp/309610。
推荐阅读
- jquery - 单击按钮时仅打开其下方的窗格
- c# - 将公共交通配置为每个实例仅发送给一个消费者
- javascript - 如何用 javascript 代码倒数?
- java - 站点被 ping 后如何运行方法?
- java - 为什么库版本会降级?
- javascript - 如何在输入字段中仅显示一个密码项目符号?
- python-3.x - 服务器无法将消息从一个客户端发送到python套接字编程中的客户端列表
- c# - 如何在客户端的剃须刀文件中下载从控制器返回的 .msg 文件
- visual-studio-extensions - 在 2 个工作区中使用 Visual Studio 扩展
- javascript - JS如何根据另一个值访问特定的数组值