检查包裹中的 Polly 断路器是否闭合?
Check if a Polly circuit breaker in a wrap is closed?
我需要查看熔断机制是否已关闭,但我的政策处于政策包装中。如何在包裹中找到 CircuitBreakerPolicy(一个或多个)?
有没有更好的方法来了解是否有任何断路器对给定策略开放?
根据 Polly 文档:
断路器exposes its state为breaker.CircuitState
。
PolicyWrap
提供了一个 variety of methods 让您一次性获得政策。
例如:
var breaker = wrap.GetPolicy<CircuitBreakerPolicy>();
var state = breaker.CircuitState;
或:
var breaker = wrap.GetPolicy<CircuitBreakerPolicy>(p => p.PolicyKey == "SomeKey");
或:
IEnumerable<CircuitBreakerPolicy> breakers = wrap.GetPolicies<CircuitBreakerPolicy>();
CircuitBreakerPolicy
(作为获取的类型)只是上面的一个例子。替换为您需要的特定类型:
CircuitBreakerPolicy
AsyncCircuitBreakerPolicy
AsyncCircuitBreakerPolicy<HttpResponseMessage>
(或其他)
我需要查看熔断机制是否已关闭,但我的政策处于政策包装中。如何在包裹中找到 CircuitBreakerPolicy(一个或多个)? 有没有更好的方法来了解是否有任何断路器对给定策略开放?
根据 Polly 文档:
断路器exposes its state为
breaker.CircuitState
。PolicyWrap
提供了一个 variety of methods 让您一次性获得政策。
例如:
var breaker = wrap.GetPolicy<CircuitBreakerPolicy>();
var state = breaker.CircuitState;
或:
var breaker = wrap.GetPolicy<CircuitBreakerPolicy>(p => p.PolicyKey == "SomeKey");
或:
IEnumerable<CircuitBreakerPolicy> breakers = wrap.GetPolicies<CircuitBreakerPolicy>();
CircuitBreakerPolicy
(作为获取的类型)只是上面的一个例子。替换为您需要的特定类型:
CircuitBreakerPolicy
AsyncCircuitBreakerPolicy
AsyncCircuitBreakerPolicy<HttpResponseMessage>
(或其他)