我已创建 EventGridTrigger 类型的 Azure Function 作为事件网格中主题的订阅者。该函数使用rest客户端调用下游api。
但是,可能存在下游 api 不可用或从 EventGridLtrigger 调用下游 api 时出现异常的情况。在这种情况下,我观察到 EventGridTopic 仍然显示已交付的事件,而不是在失败时重试。
当处理失败时,是否有可能让 EventGrid 重试传递或可能将事件添加到死信队列中?
最佳答案
Eventgrid
当且仅当失败不是由于以下原因时才会重试 配置错误,本质上无法通过重试解决。您可以通过配置两个变量
最大重试次数
和事件生存时间
来配置重试策略。正如他们的名字所暗示的 在丢弃消息之前可以进行的最大尝试次数 或死字它,事件生存时间将配置时间 默认情况下,每次重试之间的间隔为 1440。
您可以在创建事件网格时配置重试策略。
az eventgrid event-subscription create \
-g gridResourceGroup \
--topic-name <topic_name> \
--name <event_subscription_name> \
--endpoint <endpoint_URL> \
--event-ttl 720\
--max-delivery-attempts 18
引用:
关于Azure 事件网格触发器函数重试 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72806344/