标签: timer-trigger

如何为Azure功能打开"永远在线"?

我有一个功能应用程序有3个功能,其中一个定时器每2分钟触发一次.我观察到一段时间后,该函数停止被触发,但是当我进入门户时重新启动.

据我了解,原因是默认情况下,"Always On"已关闭.但是,当我转到应用程序设置/常规设置时,我无法激活灰色的"开启"状态.我可以取消选中"关闭",这似乎不会粘住或激活"开启".

在此输入图像描述

我错过了一些明显的东西吗 是永远 - 解决我的问题的解决方案,还是我应该做的其他事情?

注意:函数是用F#编写的; 我怀疑这很重要,但我想我会提到它以防万一.

f# azure-functions timer-trigger

19
推荐指数
3
解决办法
7170
查看次数

Azure功能失败时通知

我在生产中运行了定时器触发的Azure功能,但现在我希望在函数失败时收到通知.

在我的情况下,访问各种连接的服务可能会导致崩溃,并有许多故障排除.崩溃是我需要通知的错误类型.

当函数失败时,日志条目指示失败,所以我想知道系统中是否存在允许我使系统生成通知的挂钩.

我知道blob和队列绑定例如支持创建毒物队列条目,但是计时器触发器绑定没有说明任何有关该性质的触发器输出.

我看到函数可以将它们的$ return状态作为输入传递给其他函数,但是文档中没有深入解释该操作.此外,在这种情况下,我需要编写另一个函数来处理错误状态,我正在寻找内置的东西.

我已经向@AzureSupport询问过,但他们的回答与Azure Functions无关,而是将我引用到DLL通知挂钩,然后在uservoice上推荐我的文件.

我确信这里必须有人实施了某种错误状态通知.我更喜欢不需要代码的解决方案.

notifications azure azure-functions timer-trigger

8
推荐指数
2
解决办法
4397
查看次数

禁用Azure功能在Visual Studio 2017中不起作用的功能

我有Azure功能与计时器触发器.

public static void Run([TimerTrigger("0 */15 * * * *"), Disable("True")]TimerInfo myTimer, TraceWriter log)
Run Code Online (Sandbox Code Playgroud)

这里Disable("true")不起作用.它产生的function.json作为 "disabled": "True",其是不正确的.它应该是"disabled": True, Disable只接受字符串值.有没有办法改变这个?或任何其他方式来禁用功能?

c# azure azure-functions timer-trigger

7
推荐指数
4
解决办法
3109
查看次数

Azure 函数未在预定时间触发

注意:尽管它可能看起来重复,但我的问题是不同的,我要求您阅读完整的描述,然后仅通过阅读问题标题就匆忙地将问题记下来。

我于2017 年 5 月 24 日在官方“ azure-webjobs-sdk-script ”git 存储库中打开了“ Azure 功能未在预定时间触发”问题,但目前还没有回复。所以我在这里重新提问。

我在消费计划中使用 azure 函数,并通过在 function.json 中设置以下 cron 表达式将其安排在每 UTC 时间凌晨 4 点执行:

{  

"bindings": [
    {
      "name": "myTimer",
      "type": "timerTrigger",
      "direction": "in",
      "schedule": "0 0 4 * * *"
    }
  ],
  "disabled": false
}
Run Code Online (Sandbox Code Playgroud)

仅当我登录门户或单击函数刀片时, Azure 函数才会按时执行当我从门户注销时它不会调用(建议系统侦听器或函数在一段时间后进入睡眠状态)。

他们的官方文档指出,消费计划中的函数不需要任何其他设置(如始终开启)来保持函数的活动状态,Azure Functions 主机的实例会根据传入事件的数量动态添加和删除。. 因此,根据文档,我无需配置其他设置即可执行消费计划中的功能。

我尝试过什么?

  1. 从“定时器触发的天蓝色功能未触发”问题中,我重新检查并确保了我的计划(消费计划)和时区。(我希望它在 utc 中运行,所以不需要显式设置)

  2. 从“ #1445:Azure 函数计时器触发器未触发”git 问题中,我检查了是否只是未出现的日志。但我当然可以肯定,它不是日志,而是不会触发实际功能,除非我打开门户或手动触发它。

  3. 如果我将计划更改为更接近的递归调用,我试图检查这种行为是否存在——我计划函数每 2 小时执行一次,即使我注销或没有手动唤醒函数,这个计划也能完美运行。这意味着,当计划设置为在更大的间隔集上运行时会出现一些问题(在我的情况下是每天

azure azure-functions azure-sdk timer-trigger

6
推荐指数
1
解决办法
4701
查看次数

Azure 计时器触发器:每小时的 Cron 表达式

每小时的 cron 表达式是什么?我试过这个 '0 0 * ?* *' 但它抛出了一个错误我有一个 Azure 函数计时器触发器

下面的这个表达式每分钟运行一次。

public static void Run([TimerTrigger("0 * * * * *")]TimerInfo myTimer, TraceWriter log)
Run Code Online (Sandbox Code Playgroud)

这是我在尝试“0 0 * ? * * *”和“0 0 * ? * *”时收到的错误

[11/22/2018 12:45:29 AM] 发生 ScriptHost 错误 [11/22/2018 12:45:29 AM] Microsoft.Azure.WebJobs.Host:错误索引方法“Currencies.Run”。Microsoft.Azure.WebJobs.Extensions:计划表达式 '0 0 * ? * * *' 未被识别为有效的 cron 表达式或时间跨度字符串。[11/22/2018 12:45:29 AM] 错误索引方法“Currencies.Run” [11/22/2018 12:45:29 AM] Microsoft.Azure.WebJobs.Host:错误索引方法“Currencies.Run” . Microsoft.Azure.WebJobs.Extensions:计划表达式 '0 0 * ? * * *' 未被识别为有效的 cron 表达式或时间跨度字符串。

cron azure azure-functions timer-trigger

3
推荐指数
1
解决办法
8390
查看次数

从 Azure 门户安排计时器触发的 Azure 函数

我有一个 Azure 函数(内置于 Visual Studio 2019,并在 Azure 中的 .NET Core 3.x 堆栈上运行)应该由计时器触发,例如每晚运行一次。

我可以轻松创建函数并将计划定义为 NCRONTAB 表达式,如下所示:

[FunctionName("MyFunctionName")]
public void Run([TimerTrigger("0 15 3 * * 1-5")]TimerInfo myTimer, ILogger log)
{
    // Azure function code here ....
}
Run Code Online (Sandbox Code Playgroud)

像魅力一样工作 -我希望能够在 Azure 门户中定义时间表 - 而不是在我的函数代码中 - 来处理例如 DEV 与 TEST 与 PROD 情况。在 DEV 和 TEST 平台上,我可能希望每天运行几次——在生产中可能每周只运行一次。

但是使用这种方法,一旦设置了时间表 - 它已经设置,我无法在 Azure 门户中更改它(所有输入字段都变灰/禁用编辑)。

我希望我可以在 Azure 函数的声明中跳过 NCRONTAB 表达式 - 像这样:

[FunctionName("MyFunctionName")]
public void Run([TimerTrigger()]TimerInfo myTimer, ILogger log)
{
    // Azure function code here …
Run Code Online (Sandbox Code Playgroud)

azure-functions timer-trigger .net-core-3.1

2
推荐指数
1
解决办法
885
查看次数

Azure Webjob计时器触发器不会触发

我们有两个使用TimerTrigger运行的Azure Webjob部署(Prod和Test).这两个Web应用程序都有单个实例.根据这篇文章,TimeTriggers使用单例锁来确保没有并行调用.这两个实例使用相同的存储帐户.我们面临的问题是,只有其中一个部署似乎获得锁定,而其他部署无法获取锁定.如果我们停止第一个webjob,则第二个获取锁定并开始处理,反之亦然.

锁是否依赖于存储帐户?我们如何确保这两个部署都具有单独的锁定机制并同时运行?

azure azure-webjobs timer-trigger

0
推荐指数
1
解决办法
1803
查看次数

是否可以使用顺序执行执行Azure功能定时器触发器?

我想通过顺序执行来执行Azure计时器触发器.

假设我有5分钟间隔的C#定时器触发器.但是功能需要时间才能执行8分钟.这意味着在第一次调用完成之前,第二次触发启动另一个线 我怎么能避免这个?

c# multithreading azure azure-functions timer-trigger

0
推荐指数
1
解决办法
1312
查看次数