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

问题描述 投票:0回答:1

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

Azure function is continuous runningtrigger when service bus queue gets new message

但是当长时间没有消息进入队列时,比如假设1-2天,当新消息在2天后进入队列时,奇怪的是天蓝色的功能没有被触发,为什么有任何线索呢?

 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);
c# azure azure-functions azureservicebus azure-servicebus-queues
1个回答
1
投票

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

通过启用“Always On”阻止Azure功能进入空闲状态:在Azure门户中打开功能应用程序。单击Function App刀片顶部的Function App Settings。滚动到页面底部,然后单击转到应用程序服务设置。在“设置”边栏框中,向下滚动并单击“应用程序设置”。在“应用程序设置”边栏选项卡中,确保“始终开启”设置设置为“开”。

© www.soinside.com 2019 - 2024. All rights reserved.