hystrix源码小贴士之Yammer Publisher
生活随笔
收集整理的這篇文章主要介紹了
hystrix源码小贴士之Yammer Publisher
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
HystrixYammerMetricsPublisher
繼承HystrixMetricsPublisher,創建HystrixYammerMetricsPublisherCommand、HystrixYammerMetricsPublisherThreadPool、HystrixYammerMetricsPublisherCollapser。
@Overridepublic HystrixMetricsPublisherCommand getMetricsPublisherForCommand(HystrixCommandKey commandKey, HystrixCommandGroupKey commandGroupKey, HystrixCommandMetrics metrics, HystrixCircuitBreaker circuitBreaker, HystrixCommandProperties properties) {return new HystrixYammerMetricsPublisherCommand(commandKey, commandGroupKey, metrics, circuitBreaker, properties, metricsRegistry);}@Overridepublic HystrixMetricsPublisherThreadPool getMetricsPublisherForThreadPool(HystrixThreadPoolKey threadPoolKey, HystrixThreadPoolMetrics metrics, HystrixThreadPoolProperties properties) {return new HystrixYammerMetricsPublisherThreadPool(threadPoolKey, metrics, properties, metricsRegistry);}@Overridepublic HystrixMetricsPublisherCollapser getMetricsPublisherForCollapser(HystrixCollapserKey collapserKey, HystrixCollapserMetrics metrics, HystrixCollapserProperties properties) {return new HystrixYammerMetricsPublisherCollapser(collapserKey, metrics, properties, metricsRegistry);}?HystrixYammerMetricsPublisherCommand
從HystrixCommandMetrics獲取數據,然后設置到MetricsRegistry中。
例如:
protected void createExecutionLatencyPercentileGauge(final String name, final double percentile) {metricsRegistry.newGauge(createMetricName(name), new Gauge<Integer>() {@Overridepublic Integer value() {return metrics.getExecutionTimePercentile(percentile);}});}?HystrixYammerMetricsPublisherThreadPool
從HystrixThreadPoolMetrics獲取數據,然后設置到MetricsRegistry中。
例如:
metricsRegistry.newGauge(createMetricName("rollingMaxActiveThreads"), new Gauge<Number>() {@Overridepublic Number value() {return metrics.getRollingMaxActiveThreads();}});HystrixYammerMetricsPublisherCollapser
從HystrixCollapserMetrics獲取數據,然后設置到MetricsRegistry中。
例如:
metricsRegistry.newGauge(createMetricName("shardSize_percentile_50"), new Gauge<Integer>() {@Overridepublic Integer value() {return metrics.getShardSizePercentile(50);}});?
轉載于:https://www.cnblogs.com/zhangwanhua/p/8192231.html
總結
以上是生活随笔為你收集整理的hystrix源码小贴士之Yammer Publisher的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 桐花万里python路-基础篇-01-历
- 下一篇: BZOJ2743 [HEOI2012]采