Azure Monitor警报正在发送应用程序功能失败计数为1的错误失败电子邮件通知

Azure Monitor警报正在发送应用程序功能失败计数为1的错误失败电子邮件通知,azure,azure-functions,azure-application-insights,Azure,Azure Functions,Azure Application Insights,我有一个功能应用程序,其中我配置了信号逻辑,每当我的应用程序中出现大于或等于1的故障时,就会向我发送警报。我每天都收到电子邮件,说我的Azure Monitor警报已触发,随后又收到一封电子邮件,说故障已解决。我知道我的应用程序没有失败,因为我签入了应用程序洞察。例如,我今天没有失败,但前两天确实失败了: 然而,我今天确实收到了一封失败的电子邮件。如果我在配置信号逻辑时,将故障计数的静态阈值设置为大于或等于1,则会显示以下内容: 当我从Application Insights日志中知道这不是

我有一个功能应用程序,其中我配置了信号逻辑,每当我的应用程序中出现大于或等于1的故障时,就会向我发送警报。我每天都收到电子邮件,说我的Azure Monitor警报已触发,随后又收到一封电子邮件,说故障已解决。我知道我的应用程序没有失败,因为我签入了应用程序洞察。例如,我今天没有失败,但前两天确实失败了:

然而,我今天确实收到了一封失败的电子邮件。如果我在配置信号逻辑时,将故障计数的静态阈值设置为大于或等于1,则会显示以下内容:

当我从Application Insights日志中知道这不是真的时,为什么它显示了今天的失败?此外,如果我将信号逻辑更改为查看总故障而不是故障计数,则它看起来是正确的:

我决定改用total failures度量,但计数功能似乎已被破坏

编辑: 其他屏幕截图:

我建议您可以使用
自定义日志搜索
作为
信号
,前提是您已经将功能应用程序与应用程序洞察连接在一起(我希望使用这种信号,但没有看到像您这样的行为)

步骤如下:

步骤1:对于信号,请选择
自定义日志搜索
。截图如下:

步骤2:当azure函数超时时,它将抛出一个错误,错误类型为Microsoft.azure.WebJobs.Host.FunctionTimeoutException,因此您可以使用下面的查询检查它是否超时:

exceptions 
| where type == "Microsoft.Azure.WebJobs.Host.FunctionTimeoutException"
将上述查询放在“搜索查询”字段中,并根据需要配置其他设置。截图如下:

然后配置其他设置,如操作组等。如果仍然存在此类问题,请告诉我


需要注意的一点是:某些类型的触发器支持blogtrigger。因此,如果它重新启动,您也可以收到警报电子邮件。但是您可以根据禁用重试逻辑。

我可以知道您选择了哪个信号作为警报吗?你能分享一下“配置信号逻辑”页面的截图吗?嘿@HuryShen,我选择了“失败”信号。第二张和第三张图片都来自“配置信号逻辑”页面,但我只是添加了整个页面的屏幕截图。我认为我们很难根据可用信息分析问题的原因。您可以按照此步骤在azure portal上提交支持票证。Azure支持团队将在这方面帮助您。@JohnT,您的功能类型是什么?时间触发器还是其他触发器?@IvanYang这是计时器触发器