gpt4 book ai didi

c# - Azure 服务总线客户端是否会自动重试从服务总线返回的暂时性错误?

转载 作者:行者123 更新时间:2023-12-04 08:46:20 25 4
gpt4 key购买 nike

我有一个非常简单的 Azure 函数,它使用 Http 触发器将消息发送到 Azure 服务总线主题。如果服务总线返回暂时性错误,我想重试此函数。我已经评论过the default policy ,但我不知道如何验证它是否会开箱即用。我是否需要在函数代码中添加任何内容以确保使用此类重试策略?

我还想记录重试策略失败后未能加载到服务总线上的消息。我应该将函数的内容包装在 try-catch block 中并在 catch 语句中执行日志吗?

[FunctionName("MessageLoader")]
[return: ServiceBus("%Topic_Name%", Connection = "Topic_Connection")]
public static async Task<TopicMessage> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "domain/load-message")] HttpRequestMessage req)
{
var stringRequestBody = await req.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<TopicMessage>(stringRequestBody);
}

最佳答案

是的,在本例中(服务总线绑定(bind)),default retry policy用来。您不需要做任何特别的事情。要验证它是否正常工作,您应该看到 failed dependencies每当调用失败时,如果您integrated it correctly,就会在应用程序见解中.

关于你的第二个问题,如果重试放弃后失败,则不需要手动登录。如果您integrated it correctly,您应该会看到自动捕获的应用程序见解中记录的错误.

如果您想在失败时记录自定义错误,您应该使用 Servicebus message sender by creating it yourself而不是函数输出绑定(bind)。

关于c# - Azure 服务总线客户端是否会自动重试从服务总线返回的暂时性错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64297345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com