如何解决 AZFD0005 Azure Function App 错误

dev*_*rie 8 azure azure-functions azure-functions-runtime

在此输入图像描述

目前,Node Azure Function App 出现问题,抛出错误AZFD0005。节点应用程序在本地运行良好。Azure 的具体错误是:

Microsoft.Azure.WebJobs.Script.ExternalStartupException : Error building configuration in an external startup class. ---> Microsoft.Azure.WebJobs.Script.HostInitializationException : Referenced bundle Microsoft.Azure.Functions.ExtensionBundle of version 1.8.1 does not meet the required minimum version of 2.6.1. Update your extension bundle reference in host.json to reference 2.6.1 or later. For more information see https://aka.ms/func-min-bundle-versions.

在此输入图像描述

我们的资源组中共有 3 个功能应用程序,似乎从2023 年 4 月 7 日星期五开始出现此错误。在此之前,功能运行良好,没有错误。我们可以重点关注1。

我尝试了几种不同的方法来解决此错误,第一种方法是显而易见的。让我们将问题应用程序称为stackoverflow-test-app

  1. 我使用门户删除了函数 app : stackoverflow-test-app,并使用基础设施管道重新部署,并将 host.json 升级为[3.3.0, 4.0.0)。-这并没有消除错误

  2. 我部署了一个函数应用程序:stackoverflow-test-app-two,使用基础设施管道使用新名称,并使用与stackoverflow-test-app相同的配置(这样做是为了尝试在新函数应用程序上复制错误)-这以某种方式工作并且不显示 AZFD0005 错误

  3. 我决定不使用我们的基础设施管道,也不部署代码(因此只有函数应用程序的基本框架)并尝试使用 CLI 进行部署。我使用了“ az functionapp create ”命令(这样做是为了确保我们的基础设施中没有发生意外情况)-这并没有消除错误

  • 我使用的命令是:

az functionapp create -g“groupHere”-p“planHere”-n“nameHere”-s“storageHere”--分配身份'[系统]'--运行时节点--运行时版本16--函数版本4

  1. 我认为节点运行时 16 可能出现了问题,因此决定使用上面的命令并使用节点 14 函数版本 3。这并没有消除错误

  2. 我删除了函数应用程序:stackoverflow-test-app并使用门户创建了相同的函数 -这并没有消除错误

这让我感到困惑,唯一消除错误的是创建一个全新的函数应用程序stackoverflow-test-app-two,具有单独的名称并使用相同的配置。我可以删除有问题的函数 app : 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)"
    }
    }
Run Code Online (Sandbox Code Playgroud)

dev*_*rie 13

因此,显然MSFT 表示,即使您解决了错误,该错误仍然存​​在于您的函数应用程序中。

就我而言,错误已修复,但门户仍然显示错误。您可以通过转到与函数应用关联的存储帐户并清除表来清除错误

“AzureFunctionsDiagnosticEvents日期此处”

如果清除表后错误仍然存​​在,则说明您没有解决根本问题。您可以通过检查刚刚清除的表格来确认这一点,以确保没有添加新条目,如果在清除表格后进行了输入,则仍然存在问题。