【问题标题】:Check if a Polly circuit breaker in a wrap is closed?检查包装中的 Polly 断路器是否闭合?
【发布时间】:2019-07-22 23:38:57
【问题描述】:

我需要查看一个断路器是否已关闭,但我的策略处于策略包装中。如何在包装中找到 CircuitBreakerPolicy(一个或多个)? 有没有更好的方法可以知道是否有任何断路器对给定的政策开放?

【问题讨论】:

    标签: circuit-breaker polly


    【解决方案1】:

    根据 Polly 文档:

    例如:

    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&lt;HttpResponseMessage&gt;

    (或其他)

    【讨论】:

    • 谢谢。那个讨厌的文档。答案总是潜伏在那里。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-23
    • 2010-11-06
    • 2019-09-08
    • 2017-06-04
    • 2019-04-13
    相关资源
    最近更新 更多