【问题标题】:Startup errors are swallowed, how to see them?启动错误被吞下,怎么看?
【发布时间】:2020-02-25 16:55:56
【问题描述】:

我们有一个 Azure Function 2.x 在消费上运行,FrontDoor 在...前面。 所以它看起来像这样。

                 [Azure Function East 2.x Consumption]     
[FrontDoor] - < 
                 [Azure Function West 2.x Consumption]     

我们已将 Azure Monitor 配置为在 azure 函数上引发响应代码 5xx 时随时向我们发送警报。

  • 自从设置 Front Door 后,我们每天都会收到数次 5xx 警报。
  • 这些 5xx 未纳入 Application Insights。
  • 日志分析中没有关于失败的任何内容。

从历史上看,我们知道当 Azure 函数启动失败时会发生这种情况。但是,查看 Kudu 中的日志,我们没有看到任何启动失败。

我们确实看到了很多函数运行时开始和停止的条目,正如我们期望在消耗计划函数中看到的那样。

所以。我们认为这些 5xx 错误是由 Front Door 在启动时向函数发送健康检查引起的。 (前门在健康检查时非常健谈) 但我们无法证明这一点,Azure 函数运行时提供了对启动失败的 0 洞察。

问题 如何查看 Azure Function Runtime 启动失败?

触发警报规则:

【问题讨论】:

  • kudu 的 eventlog.xml 中什么都没有?这通常是难以诊断启动问题的地方。
  • 正确。我可以看到消息指示退出 PID 并启动与这些问题相关的新 PID,但是我们没有任何相关的错误消息。只是 pid 死了 pid 创建的。

标签: c# azure azure-functions azure-front-door


【解决方案1】:

我假设如果您调用该函数并且它提供了预期的响应,则证明这不是启动问题。

可能的原因是 Application Insights 未捕获 502 错误,因为它们发生在 IIS 级别(大部分时间)。

我最近注意到我的 Azure Functions 上有几个 502,但它们与长时间运行的任务/超时有关。

查看诊断工具/可用性和性能/5xx 错误。它应该给你一些关于问题所在的方向。这是我的一个项目中的一个示例,我遇到了几个 502 错误:

更多信息:

https://docs.microsoft.com/en-us/azure/app-service/overview-diagnostics

https://docs.microsoft.com/en-us/aspnet/core/test/troubleshoot-azure-iis?view=aspnetcore-2.2#aspnet-core-module-stdout-log-azure-app-service

【讨论】:

    猜你喜欢
    • 2021-08-03
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 2016-01-27
    相关资源
    最近更新 更多