Add tracer autoconfigure. (#847)
为 SOFATracer 中的 plugin 增加 SOFABoot auto-configuration
fix #847
以下plugin的autoconfigure,是从SOFATracer 3.1.0版本的starter中抽取了相关代码,同步过来的。
- KafkaMQ
- RabbitMQ
- SpringMessage
- Redis
MongoDB plugin 的autoconfigure
前提:SOFATracer基于MongoDB 3.8.2版本的驱动实现,而当前版本SOFABoot依赖MongoDB 4.0.5版本驱动。因此,需基于当前版本驱动的MongoClient和MongoAutoConfiguration实现自动配置。
实现思路:注册自定义MongoClientSettingsBuilderCustomizerbean,向MongoDB client的配置类中增加SofaTracerCommandListener。
RocketMQ plugin 的autoconfigure
- 添加了可选依赖rocketmq-spring-boot-starter
- 注册BeanPostProcessor,在producer和consumer初始化后,添加MessageHook
Codecov Report
Merging #875 (d26c33e) into master (d7f4dc1) will decrease coverage by
0.12%. The diff coverage is0.00%.
@@ Coverage Diff @@
## master #875 +/- ##
============================================
- Coverage 11.38% 11.25% -0.13%
Complexity 41 41
============================================
Files 312 325 +13
Lines 9207 9310 +103
Branches 1270 1275 +5
============================================
Hits 1048 1048
- Misses 8001 8104 +103
Partials 158 158
| Impacted Files | Coverage Δ | |
|---|---|---|
| ...igure/tracer/SofaTracerKafkaAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...igure/tracer/SofaTracerMongoAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...re/tracer/SofaTracerRabbitMqAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...igure/tracer/SofaTracerRedisAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...re/tracer/SofaTracerRocketMqAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...nfigure/tracer/SpringMessageAutoConfiguration.java | 0.00% <0.00%> (ø) |
|
| ...a/processor/KafkaConsumerFactoryPostProcessor.java | 0.00% <0.00%> (ø) |
|
| ...a/processor/KafkaProducerFactoryPostProcessor.java | 0.00% <0.00%> (ø) |
|
| ...ocessor/StreamRocketMQTracerBeanPostProcessor.java | 0.00% <0.00%> (ø) |
|
| ...ofaTracerMongoClientSettingsBuilderCustomizer.java | 0.00% <0.00%> (ø) |
|
| ... and 3 more |
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.
@it-linnan 还有一个问题,原先 tracer 代码中的 @author 标签不对(后边没有冒号的),也辛苦改一下。
review 有点慢,还请见谅~
@it-linnan 感谢贡献代码~ mongodb 和 rocketmq 的基础 processor 可以提供一下测试用例吗?
@it-linnan 感谢贡献代码~ mongodb 和 rocketmq 的基础 processor 可以提供一下测试用例吗?
好的,我写一下测试用例
@alaneuler 测试用例已提交,麻烦review下,辛苦~