【问题标题】:Migrating dotnet-isolated process Azure Function from .net 5 to .net 6将 dotnet 隔离的进程 Azure Function 从 .net 5 迁移到 .net 6
【发布时间】:2022-01-22 05:18:05
【问题描述】:

我正在尝试将现有的 .net 5 dotnet-isolated 函数迁移到 .net 6。它已部署到 Azure。我更新了所有 NuGet 包并将FUNCTIONS_EXTENSION_VERSION 设置为~4。如前所述,它在 dotnet-isolated FUNCTIONS_WORKER_RUNTIME 设置中的 .net 5 上运行良好,现在仍然存在。

它在 Visual Studio 2022 中运行良好,但在部署到 Azure 时,没有加载和执行任何函数。 Functions 应用程序已启动并正在运行。使用 Kudu 调试控制台,我得到:

2021-12-20T15:25:11.703 [Information] Loading functions metadata
2021-12-20T15:25:11.704 [Information] 0 functions loaded
2021-12-20T15:25:11.705 [Information] Loading functions metadata
2021-12-20T15:25:11.705 [Information] 0 functions loaded
2021-12-20T15:25:26.229 [Information] Host Status: {
  "id": "testname",
  "state": "Running",
  "version": "4.0.1.16815",
  "versionDetails": "4.0.1+d22b332c30efafeed1e4898c9b92280697138194",
  "platformVersion": "96.0.7.599",
  "instanceId": "25d4009bce1d0f8d31e51726fdcef27cc4654e363649d28127051edda8891d94",
  "computerName": "10-30-6-202",
  "processUptime": 51200
}

Azure 是否已经支持带有 dotnet-isolated 和 .net 6 的函数?我还可以检查什么来找出为什么没有找到并执行函数?

【问题讨论】:

    标签: azure-functions .net-6.0


    【解决方案1】:

    首先,我们创建了 .Net 5 Isolated v3 Azure Functions,并通过 Visual Studio 将它们部署在 Azure 中。

    部署到 Azure 后,我们在门户中看到如下配置:

    并运行函数:

    在这一步之后,将 .Net Core 版本从 5 更改为 6 并将 .csproj 文件中的函数版本 v3 更改为 v4 并重建解决方案。

    • 已成功构建并在本地执行。

    将版本更改为 6 后,通过 Visual Studio 发布到相同的功能应用,因为它要求自动更新 azure 功能版本并选择是并发布。

    这里在 Azure Function App Configuration 中,它自动将函数版本更改为4

    更新答案

    在 azure 中发布了 2 个函数:

    在 azure 中发布了 0 个函数:

    • 确保您添加了函数并发布到 azure 以查看 已发布的函数正在“函数”选项卡中运行/可用。

    • 将函数应用发布到 azure 后,您可能会更改/删除 WEBSITE_RUN_FROM_PACKAGE值。如果您在应用程序配置中更改或删除了功能选项卡中的功能,则会在门户中删除。

    我们在应用程序配置中更改 WEBSITE_RUN_FROM_PACKAGE0 时遇到了同样的问题。我们看到相同的调试控制台日志

    注意:

    1. 如果您进行了更改WEBSITE_RUN_FROM_PACKAGE,请在发布到 azure 之前进行更改。 要么 使用visual to azure发布不带zip deploy的函数应用。
    2. 如果您进行了任何更改WEBSITE_RUN_FROM_PACKAGE,请确保您的函数类文件在函数选项卡中可用

    【讨论】:

    • 感谢您的回复。我的函数应用程序也已启动并运行,但未找到并执行任何函数。配置中的其余部分与您这边相同(FUNCTIONS_EXTENSIONS_VERSION 为 ~4,FUNCTIONS_WORKER_RUNTIME 也是 dotnet-isolated)。
    • @JanezLukan,请查看更新后的答案。
    • 再次感谢您帮助 DelliganeshS-MT。我们的 Azure DevOps 构建代理中似乎存在问题,它设法构建和部署,但由于某种奇怪的原因,出现了错误并且无法正常工作,即使功能已成功部署并启动并运行。从 Visual Studio 部署成功并按预期工作。
    • 如果回答对您有帮助,请Accept it as an Answer,以便遇到相同问题的其他人可以找到此解决方案并解决他们的问题。
    猜你喜欢
    • 2022-11-11
    • 2022-08-12
    • 2022-01-11
    • 2021-03-20
    • 2021-12-30
    • 1970-01-01
    • 2021-11-05
    • 2022-11-17
    • 2017-08-03
    相关资源
    最近更新 更多