无明显故障的情况下,将触发有关Azure Functions“失败”指标的Azure警报

问题描述

我希望当某个功能应用程序失败时触发Azure警报。我将其设置为[功能名称]失败的度量标准思维的GTE 1阈值,它将产生预期的结果。但是,当它每天运行时,我会收到警报触发的通知,但是我在Application Insights中找不到任何内容来指示失败,并且它似乎已成功运行并完成。

以下是触发的警报摘要

enter image description here

以下是来自门户的调用监视,显示了过去几天中相同的功能,没有失败:

enter image description here

这是该时间段内的应用程序见解搜索不显示任何异常和所有成功的依赖操作:

enter image description here

问题是-在Application Insights中没有任何遥测的情况下,什么可能导致Azure Function Failed指标注册非零值?

更新-这是警报配置

enter image description here

具体条件设置-

enter image description here

故障刀片的时间范围更广:

enter image description here

blob 404上有一些依赖项失败,但是我认为这是来自另一个函数,该函数显式检查路径中是否存在blob,以了解要从外部源下载哪些文件。时间戳也不会落在采样期内。

enter image description here

没有例外:

enter image description here

解决方法

@ ivan-yang对问题的评论,我已将警报更改为使用自定义日志搜索,而不是内置的Azure Function指标。在这一点上,该指标对于触发它的原因似乎是不透明的,并且每天运行一次Azure函数时都触发该事件,而没有明显的基础故障。我打算现在避免使用该指标。

基于日志的警报现在正在使用以下查询来获取我要查找的内容(发生异常或功能失败):

requests
| where success == false
| union (exceptions)
| order by timestamp desc

感谢@ ivan-yang和@ krishnendughosh-msft的帮助