计时器触发 Azure 函数未被触发
Timer triggered Azure Function not getting triggered
我在 Azure 上有一个函数,其中包含以下 function.json 文件:
{
"bindings": [
{
"type": "timerTrigger",
"direction": "in",
"schedule": "0 0 3 * * *",
"name": "myTimer"
}
],
"disabled": false
}
除非我错了,这应该使函数 运行 每天凌晨 3 点运行一次?
这是函数的签名:
public static async Task Run(TimerInfo myTimer, TraceWriter log) {}
那么我做错了什么?当我手动触发它时(在门户中单击 "Run"),该功能工作正常,但今天凌晨 3 点运行 没有,昨天也没有。
编辑: 因此,按照建议,我已将计划更改为付费计划,并选择了动态计划。日志仍然没有说明今天凌晨 3 点激活的功能。
在经典模式下 运行 的应用需要 'Always On' 才能启用。仔细检查是否已启用 - 这将解释它。
Functions 应用程序可以 运行 有两个计划:Dynamic 和 Classic。您在创建应用程序期间选择计划。目前无法在创建应用程序后切换计划:
经典计划 运行 应用服务计划就像其他应用服务应用一样。您可以选择“免费”、“基本”、“标准”等,您可以自行控制规模。如果您使用的是经典计划,则必须打开 'Always On' 才能可靠地触发触发器。这要求您的网站处于基本或标准模式。您可以通过单击 'Function app settings' -> 'Go to App Service Settings' 从您的 Function App 管理它(并检查 'Always On')。 'Always On' 设置位于 'Application settings'.
动态计划按执行收费。没有 'Always On' 的概念——当触发器触发时,您的站点将启动(如果尚未启动)并且您的函数将 运行.
详情请看这里:https://azure.microsoft.com/en-us/documentation/articles/functions-scale/#choose-a-service-plan
我在 Azure 上有一个函数,其中包含以下 function.json 文件:
{
"bindings": [
{
"type": "timerTrigger",
"direction": "in",
"schedule": "0 0 3 * * *",
"name": "myTimer"
}
],
"disabled": false
}
除非我错了,这应该使函数 运行 每天凌晨 3 点运行一次?
这是函数的签名:
public static async Task Run(TimerInfo myTimer, TraceWriter log) {}
那么我做错了什么?当我手动触发它时(在门户中单击 "Run"),该功能工作正常,但今天凌晨 3 点运行 没有,昨天也没有。
编辑: 因此,按照建议,我已将计划更改为付费计划,并选择了动态计划。日志仍然没有说明今天凌晨 3 点激活的功能。
在经典模式下 运行 的应用需要 'Always On' 才能启用。仔细检查是否已启用 - 这将解释它。
Functions 应用程序可以 运行 有两个计划:Dynamic 和 Classic。您在创建应用程序期间选择计划。目前无法在创建应用程序后切换计划:
经典计划 运行 应用服务计划就像其他应用服务应用一样。您可以选择“免费”、“基本”、“标准”等,您可以自行控制规模。如果您使用的是经典计划,则必须打开 'Always On' 才能可靠地触发触发器。这要求您的网站处于基本或标准模式。您可以通过单击 'Function app settings' -> 'Go to App Service Settings' 从您的 Function App 管理它(并检查 'Always On')。 'Always On' 设置位于 'Application settings'.
动态计划按执行收费。没有 'Always On' 的概念——当触发器触发时,您的站点将启动(如果尚未启动)并且您的函数将 运行.
详情请看这里:https://azure.microsoft.com/en-us/documentation/articles/functions-scale/#choose-a-service-plan