如何解决如何在驼峰弹簧靴中将Resilience4j指标集成到测微仪
我正在将Camel与Spring Boot和Micrometer一起使用。在我的其中一条路线中,我正在使用带有Resilience4j的断路器:
.circuitBreaker()
.resilience4jConfiguration()
.timeoutEnabled(true)
.timeoutDuration(2000)
.end()
我正在使用Spring管理的千分尺。在使用Hystrix迁移到resilience4j之前,我可以将其绑定到我的Micrometer注册表中:
@Configuration()
public class MetricsRegistryBuilder {
@Bean
HystrixMetricsBinder registerHystrixMetricsBinder() {
return new HystrixMetricsBinder();
}
}
不幸的是,对于Resilience4j没有粘合剂。有一些有关如何将Resilience4j CircuitBreakerRegistry绑定到Micrometer的文档: https://resilience4j.readme.io/docs/micrometer 以及使用Spring的方法: https://resilience4j.readme.io/docs/getting-started-3
我试图简单地将Resilience4j CircuitBreakerRegistry自动连接到测微计:
@Configuration()
public class MetricsRegistryBuilder {
@Autowired
private CircuitBreakerRegistry circuitBreakerRegistry;
}
不幸的是,Spring找不到CircuitBreakerRegistry Bean。
因此,我的问题是,在将Camel与Spring结合使用时,如何将CircuitBreakerRegistry绑定到Micrometer上,或更抽象地将Resilience4j中的指标抽象化?
我想到的唯一其他可能的解决方案是手动管理所有Resilience4j配置,定义bean,并将其移交给我的Camel配置。考虑到绑定Resilience4j指标的简单任务,在我看来,这需要大量工作和样板代码。
我正在使用以下版本:
- 骆驼3.4.3
- 春季2.3.3。发布
- 测微计1.5.4
我也在使用骆驼弹簧启动启动器依赖项:
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-micrometer-starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-resilience4j-starter</artifactId>
</dependency>
解决方法
您为什么不能使用我们的Spring Boot 2 Starter? 入门程序会自动配置CircuitBreakerRegistry,MeterRegistry并允许进行外部配置。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。