几天后消息进入服务总线队列时,Azure功能不会被触发

时间:2018-08-30 05:41:22

标签: c# azure azure-functions azureservicebus azure-servicebus-queues

我观察到由服务总线队列消息触发的azure函数的这个奇怪问题。

Azure function is continuous running,即trigger when service bus queue gets new message

  

但是长时间没有消息进入队列时   1-2天,当2天后新消息进入队列时,   奇怪的是azure函数没有被触发,为什么有任何线索?

 public static class TestController
    {
        [FunctionName("TestController")]
        public static async Task Run([ServiceBusTrigger("%TestController.Topic%", "%TestController.Subscription%", AccessRights.Listen,
            Connection = "ConnServiceBus")]BrokeredMessage currentMessage, TraceWriter log, ExecutionContext context)
        {
            log.Info("TestControllerprocessing start " + DateTime.Now);

1 个答案:

答案 0 :(得分:1)

通过点击刷新按钮,尝试强制重新同步触发器。对于闲置了不确定时间段的Azure功能,这是一个已知问题。另外,验证您是否在死信队列中看到消息。

通过启用“始终打开”来防止Azure功能从闲置开始:在Azure门户中打开Function App。单击“功能应用程序”刀片顶部的“功能应用程序设置”。滚动到页面底部,然后单击“转到应用程序服务设置”。在“设置”刀片中,向下滚动并单击“应用程序设置”。在“应用程序设置”刀片中,确保将“始终打开”设置设置为“打开”。