hystrix源码小贴士之Yammer Publisher
HystrixYammerMetricsPublisher
繼承HystrixMetricsPublisher,創(chuàng)建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獲取數(shù)據(jù),然后設(shè)置到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獲取數(shù)據(jù),然后設(shè)置到MetricsRegistry中。
例如:
metricsRegistry.newGauge(createMetricName("rollingMaxActiveThreads"), new Gauge<Number>() {@Overridepublic Number value() {return metrics.getRollingMaxActiveThreads();}});HystrixYammerMetricsPublisherCollapser
從HystrixCollapserMetrics獲取數(shù)據(jù),然后設(shè)置到MetricsRegistry中。
例如:
metricsRegistry.newGauge(createMetricName("shardSize_percentile_50"), new Gauge<Integer>() {@Overridepublic Integer value() {return metrics.getShardSizePercentile(50);}});?
轉(zhuǎn)載于:https://www.cnblogs.com/zhangwanhua/p/8192231.html
總結(jié)
以上是生活随笔為你收集整理的hystrix源码小贴士之Yammer Publisher的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 桐花万里python路-基础篇-01-历
- 下一篇: BZOJ2743 [HEOI2012]采
