Azure 计时器功能未运行

标签 azure azure-functions azure-app-service-plans

我有一个带有计时器触发器的 Azure 函数。时间表为“0 0 18 * * 周一至周五”。我可以手动运行它,但它不会自动触发。我看到一些答案说应用服务计划不能是“经典”,但我没有看到该选项。我的函数应用程序的应用程序服务计划是基于消耗的。有什么建议吗?

这是 function.json:

{
  "generatedBy": "Microsoft.NET.Sdk.Functions-1.0.24",
  "configurationSource": "attributes",
  "bindings": [
    {
      "type": "timerTrigger",
      "schedule": "0 0 18 * * MON-FRI",
      "useMonitor": true,
      "runOnStartup": false,
      "name": "myTimer"
    }
  ],
  "disabled": false,
  "scriptFile": "../bin/MyApp.dll",
  "entryPoint": "MyApp.ProcessOptions.Run"
}

最佳答案

如果它位于应用服务计划中,您需要确保启用始终开启

消费模式下,不存在Always On这样的东西。相反,您的函数应用应该在计时器到期时自动唤醒。为此,您的触发器需要同步,这通常在各种情况下自动发生:

a) 如果您使用门户来更改功能

b) 如果您使用 msdeploy、Kudu git deploy 或 Kudu 的 zipdeploy (/api/zipdeploy) 部署 Function App

c) 如果您单击门户中 Function App 名称旁边的小刷新图标

注意:默认情况下,计划使用 UTC 时间,因此在设置每日计划时请注意这一点(如果每小时触发也没关系)。 您可以通过设置 WEBSITE_TIME_ZONE 将其更改为特定时区。请参阅here了解更多信息。

更多详情可以引用这个article .

关于Azure 计时器功能未运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53673307/

相关文章:

Azure 应用服务二头肌网络访问限制禁止公共(public)访问

azure - app_offline.htm 不会导致网站瘫痪

azure - 应用服务计划上的 Azure 函数的设置 "WEBSITE_CONTENTSHARE"和 "WEBSITE_CONTENTAZUREFILECONNECTIONSTRING"问题

python - 使用共享 key 授权向 Azure 存储发出 PUT 请求

Azure 数据资源管理器 - 限制表和记录

azure - 将数组值传递给变量

azure - 为通过 Azure 函数输出绑定(bind)添加到 Azure 队列的消息设置 VisibilityTimeout

azure - .net 7 隔离的 Azure 函数依赖注入(inject)在部署时失败(在本地工作)

python - 如何在不提供变量的情况下通过 HTTP 触发 Azure 函数?

linux - 在应用服务计划 (Linux) 上运行 .Net 6 代码