当前,Node Azure Function App 出现问题,抛出错误 AZFD0005。节点应用程序在本地运行良好。 Azure 的具体错误是:
Microsoft.Azure.WebJobs.Script.ExternalStartupException:在外部启动类中构建配置时出错。 ---> Microsoft.Azure.WebJobs.Script.HostInitializationException :引用的版本 1.8.1 的捆绑 Microsoft.Azure.Functions.ExtensionBundle 不满足 2.6.1 所需的最低版本。将 host.json 中的扩展包引用更新为引用 2.6.1 或更高版本。有关详细信息,请参阅 https://aka.ms/func-min-bundle-versions。
我们的资源组中共有 3 个 Function 应用,这些应用似乎于2023 年 7 月 4 日星期五开始出现此错误。在此之前,功能运行良好,没有错误。我们可以重点关注1。
我尝试了几种不同的方法来解决此错误,第一种方法是显而易见的。让我们将问题应用程序命名为 stackoverflow-test-app。
我使用门户删除了函数应用程序:stackoverflow-test-app,并使用基础设施管道重新部署,并将 host.json 升级到
[3.3.0, 4.0 .0)
。 - 这并没有消除错误我使用基础架构管道部署了一个函数应用:stackoverflow-test-app-two,并使用了与 stackoverflow-test-app 相同的配置。 strong>(这样做是为了尝试在新功能应用程序上复制错误) - 这在某种程度上有效并且不会显示 AZFD0005 错误>
我决定不使用我们的基础设施管道,也不部署代码(因此拥有函数应用程序的基本框架)并尝试使用 CLI 进行部署。我使用了“az functionapp create”命令(这样做是为了确保我们的基础设施中不会发生任何意外) - 这并没有消除错误嗯>
- 我使用的命令是:
az functionapp create -g "groupHere" -p "planHere" -n "nameHere" -s "storageHere" --assign-identity '[system]' --runtime node --runtime-version 16 --functions-version 4
我认为节点运行时 16 可能出现了问题,因此决定使用上面的命令并使用节点 14 函数版本 3。这并没有消除错误
我删除了函数应用程序:stackoverflow-test-app 并使用门户创建了相同的函数 - 这并没有消除错误
这让我感到困惑,消除错误的唯一方法是使用单独的名称创建一个全新的函数应用stackoverflow-test-app-two 并使用相同的配置。我可以删除有问题的函数应用程序:stackoverflow-test-app 很好,但是当我使用相同的函数名称重新创建它时,无论是使用门户还是 CLI 命令,AZFD0005 错误再次弹出。
我可以确认资源组、应用服务计划或存储帐户一切正常,因为创建的任何新功能应用都可以正常工作。
这是我的 host.json:
{
"version": "2.0",
"logging": {
"applicationInsights": {
"samplingSettings": {
"isEnabled": true,
"excludedTypes": "Request"
}
}
},
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[3.3.0, 4.0.0)"
}
}
最佳答案
因此,显然MSFT 表示,即使您解决了该错误,该错误仍然存在于您的函数应用中。
就我而言,错误已修复,但门户仍然显示错误。 您可以通过转到与函数应用关联的存储帐户并清除表格来清除错误:
"AzureFunctionsDiagnosticEventsDATEHERE"
如果清除表后错误仍然存在,则说明您没有解决根本问题。您可以通过检查刚刚清除的表格来确认这一点,以确保没有进行新的输入,如果在清除表格后进行了输入,则仍然存在问题。
关于azure - 如何解决 AZFD0005 Azure Function App 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75991406/