【问题标题】:Azure function timeout/fails to completeAzure 函数超时/无法完成
【发布时间】:2022-01-13 04:25:39
【问题描述】:

各位亲们,

我在使用 Azure 功能时遇到了一些问题,希望有人能提供帮助。

我们有一个运行时间相对较长的进程(3-4 分钟),该进程是由服务总线消息触发的,并且我们遇到了函数执行没有错误地结束然后尝试重新处理的问题。发生这种情况所需的时间少于我们配置的所有超时/锁定持续时间设置。观察日志(日志流,用于文件系统和应用程序洞察),我们看到上一次执行的最后一行,然后直接进入下一行。

为了确定它是否与服务总线相关,我还尝试通过 blob 触发器执行该进程(该进程无论如何都将文件用作数据源),但我看到的是相同的东西,只是我没有看到后续重试。

在这两种情况下,除了跟踪记录之外,我在 App 洞察力中看不到任何内容。我没有收到异常,甚至没有“请求”条目。 (顺便说一句,函数逻辑都包含在 try/catch 块中)

所以我的问题是 - 是否可以捕获这些场景以便我们确定根本原因?目前我没有什么可以继续尝试和诊断。在本地运行时不会发生这些错误。

FWIW 我们已经看到在执行第三方库(MS Graph 和 OpenXMLPowerTools 库)期间发生了此问题,因为我们正在生成要上传到 Sharepoint 的文档。不确定这是否相关。

提前谢谢你,

提姆

【问题讨论】:

    标签: azure timeout servicebus


    【解决方案1】:

    这可能是因为您使用的套餐,如果您使用的是消费套餐,默认超时为 5 分钟,但您可以将其增加到最多 10 分钟。高级计划的最长超时时间为 60 分钟。如果您有专门的应用服务计划,则可以根据需要设置超时时间。
    还可以尝试配置函数应用的超时时间,即通过更改函数应用的 host.json 中 functionTimeout 的值。

    【讨论】:

    • 感谢您的回答。如果函数超时,我仍然会假设一些错误消息可用。
    猜你喜欢
    • 2019-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-06
    • 1970-01-01
    相关资源
    最近更新 更多