You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure告警需求:仅未触发事件ID650时触发事件ID500告警

解决Azure日志告警中“检测到EventID500且未触发EventID650”的KQL写法

针对你的需求——仅当5分钟时间窗口内检测到EventID500、且同一虚拟机未出现EventID650时触发告警,以下是两种可行的KQL实现方案:

方式1:使用leftanti关联(性能更优)

// 提取时间范围内的EventID500事件,保留原查询逻辑
let events_500 = Event 
    | where EventID == "500" 
    | summarize arg_max(TimeGenerated, *) by ParameterXml 
    | project TimeGenerated, Computer, EventID, RenderedDescription;
// 提取同一时间范围内的EventID650事件,仅保留关联所需的计算机标识
let events_650 = Event 
    | where EventID == "650" 
    | project Computer;
// 仅保留有500事件但无对应650事件的记录
events_500
| join kind=leftanti (events_650) on Computer
| order by TimeGenerated

leftanti关联的作用是:返回左表(events_500)中所有在右表(events_650)找不到匹配Computer的记录,精准对应“有500但无650”的场景。

方式2:使用not exists子查询

Event 
| where EventID == "500" 
| summarize arg_max(TimeGenerated, *) by ParameterXml 
| project TimeGenerated, Computer, EventID, RenderedDescription
// 过滤掉同一时间窗口内该虚拟机出现过EventID650的记录
| where not exists (
    Event 
    | where EventID == "650" 
    | where Computer == Computer
)
| order by TimeGenerated

子查询会检查当前记录对应的Computer在告警时间窗口内是否存在EventID650,not exists会直接排除掉这类不符合条件的记录。

注意事项

告警配置的5分钟时间窗口会自动作用于查询的时间范围,无需手动在KQL中指定时间条件,确保查询逻辑和告警窗口一致。

内容的提问来源于stack exchange,提问作者Catcha24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 12:53:24