我需要为 Azure 日志分析编写一个 Kusto 查询,以查找在字段中具有相同值的连续事件(相同的错误代码)。我们基本上需要查找请求是否连续两次失败。一次请求失败、一次成功、一次失败的情况不予退回。
问问题
3514 次
1 回答
6
假设您有一个带有 Id、Datetime 和 ErrorCode 的表,您可以利用 prev() 函数来实现:
https://docs.microsoft.com/en-us/azure/kusto/query/prevfunction
datatable(Id:string, Datetime:datetime, ErrorCode:string)
[
'1', datetime(2018-10-16 00:00), 'Error 1',
'1', datetime(2018-10-16 00:01), 'Error 1',
'2', datetime(2018-10-16 00:02), 'Error 1',
'2', datetime(2018-10-16 00:03), 'Error 2',
]
| order by Id, Datetime asc
| extend prevErrorCode = prev(ErrorCode), prevId=prev(Id)
| where prevErrorCode==ErrorCode and prevId == Id
于 2018-10-16T04:28:01.603 回答