如果超时超过10分钟,Python Azure函数将发出警报

时间:2020-06-25 18:03:42

标签: azure azure-functions azure-application-insights

我有一个在计时器触发器上运行的Azure Functions应用程序,我预计不会超过10分钟的超时限制,但是我希望在应用程序运行时间超过10分钟的极少数情况下收到警报。这可以在Application Insights中完成吗?我没有看到此用例的警报触发器。在Application Insights中,“智能检测”设置中有一个“依赖关系持续时间长”,可以在其中添加电子邮件,并且还已经设置了“失败异常”警报规则。如果某个功能的运行时间超过10分钟,这些方法中的任何一种都会提醒我吗?

如果单个函数实例遇到任何类型的异常,我也希望收到警报。我可以在Python代码中自己进行设置,方法是将我的代码包装在try块中,除非遇到异常,然后用块阻止和通过电子邮件发送,但如果在Application Insights中可以做到,则会更容易。

1 个答案:

答案 0 :(得分:1)

您可以转到功能应用程序的host.json,

并像这样更改它:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[1.*, 2.0.0)"
  },
  "functionTimeout": "00:10:00"
}

然后,如果您的实例运行超过10分钟,它将抛出错误。

因此,您可以转到函数的Application Insight并选择如下所示:

enter image description here

enter image description here

enter image description here

您可以将操作类型设置为Email / EMS并提供您的电子邮件地址,然后当时间触发超时时您将收到一封电子邮件。