Azure 函数已发布但未 运行、"no data available"

Azure function published but not running, "no data available"

我可以从 Visual Studio 发布 Azure 函数而不会出错。

此功能设置为 运行 每 4 秒 ("*/4 * * * * *") 但它根本不是 运行ning。即使我尝试手动 运行 它也不会 运行 并显示以下错误:

Status: 404 Not Found

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

在监控下它不显示数据,在成功或错误计数下它说没有数据可用:(

没有任何工作请帮助

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

根据你的404错误信息,这意味着找不到你的函数源。比如资源路径错误,函数名被更改,函数名错误或者函数已经deleted.You可以检查你的class名称和FunctionName属性名称是否一致。如果您更改了代码,请记得重新构建项目。

并且在发布到 Azure 之前,请确保您可以在 Visual studio 中成功 运行 Azure 功能。在调试模式下,检查输出日志是否正确。

Under monitoring it do not shows data, under success or error count it says no data available

此信息通常表示功能之前从未被触发过。如果你在 Azure 中新建一个函数,直接点击 Monitor,你也可以看到这个信息。要解决这个问题,除非你能成功触发这个 Azure 函数。

您的函数的问题是 GetFTPData.cs 不是一个有效的函数名称。 VS build 不验证函数名称并且门户不显示这些错误。

此问题是跟踪门户错误显示https://github.com/Azure/azure-functions-ux/issues/2316

这用于 VS 构建以验证 functionName 属性 https://github.com/Azure/azure-functions-vs-build-sdk/issues/174

在我的例子中,我使用 Azure 资源管理器 (ARM) 模板部署了 azure 函数。我手动创建了它,但缺少存储帐户的一些属性:

对于使用 ARM 模板部署 Azure Function 的任何人,我强烈建议从 GitHub 快速入门 ARM 模板中获取模板:https://github.com/Azure/azure-quickstart-templates

它提供了启动您的函数(和其他资源)的最小模板,运行。

这是一个很老的话题,但如果有人在将他们的 Function App 迁移到 .NET Core 3.1 后遇到同样的问题,请检查您是否也将 Function Runtime Version 更新为 3。更新 Function App SDK 和在 Azure 门户中检查函数运行时设置是否为 3。如果不更新此设置,每当您尝试调用函数应用程序时都会出现相同的 404 错误。

要更改函数运行时版本,请在 Azure 门户中打开函数应用程序,然后转到 Configuration -> Function runtime settings。从 Runtime version 下拉列表中选择 ~3