Автоматический выключатель Polly Http отключается только при исключении тайм-аутаC#

Место общения программистов C#
Anonymous
Автоматический выключатель Polly Http отключается только при исключении тайм-аута

Сообщение Anonymous »

У нас есть поставщик, который часто терпит убытки. Мы больше не хотим, чтобы схема прерывалась, когда они возвращают нам 500 ошибок и т. д. Мы просто хотим, чтобы схема прерывалась при возникновении исключения тайм-аута.

Код: Выделить всё

IAsyncPolicy circuitBreaker = HttpPolicyExtensions
.HandleTransientHttpError()
.OrResult(msg => msg.StatusCode == HttpStatusCode.RequestTimeout)
.AdvancedCircuitBreakerAsync(
failureThreshold: 0.25,
samplingDuration: TimeSpan.FromSeconds(300),
minimumThroughput: 50,
durationOfBreak: TimeSpan.FromSeconds(20));

services.AddHttpClient()
.AddPolicyHandler(circuitBreaker);
Как это сделать через Polly? HandleTransientHttpError обрабатывает ошибки 5XX и 408, но я не вижу никаких других методов расширения, кроме этого и OrTransientHttpError, который делает то же самое.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -exception

Вернуться в «C#»