[Bug] Dubbo 3.3.3 Call-Chain of Skywalking not correct
Pre-check
- [x] I am sure that all the content I provide is in English.
Search before asking
- [x] I had searched in the issues and found no similar issues.
Apache Dubbo Component
Java SDK (apache/dubbo)
Dubbo Version
Dubbo 3.3.3, jdk17
Steps to reproduce this issue
I had upgrade dubbo to version 3.3.3, but the #14925 bug did not fixed !
What you expected to happen
fix bug #14925
Anything else
No response
Are you willing to submit a pull request to fix on your own?
- [ ] Yes I am willing to submit a pull request on my own!
Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Would you like to fix it?
Would you like to fix it?
I don't hava time ...
Would you like to fix it?
I don't hava time ...
How do you collect trace from Java Process? Please show me the configuration thanks.
Would you like to fix it?
I don't hava time ...
How do you collect trace from Java Process? Please show me the configuration thanks.
@Bean
@Primary
@ConditionalOnMissingBean
ObservationRegistry observationRegistry(List<MeterObservationHandler<?>> handlers, ObservationPredicate predicate)
{
ObservationRegistry registry = ObservationRegistry.create();
registry.observationConfig()
.observationHandler(
new ObservationHandler.FirstMatchingCompositeObservationHandler(
new SkywalkingMeterHandler(new SkywalkingMeterRegistry())))
.observationHandler(
new ObservationHandler.FirstMatchingCompositeObservationHandler(handlers))
.observationHandler(
new ObservationHandler.FirstMatchingCompositeObservationHandler(
new SkywalkingSenderTracingHandler(),
new SkywalkingReceiverTracingHandler(),
new SkywalkingDefaultTracingHandler()))
.observationPredicate(predicate);
return registry;
}
@AutoConfiguration
@ConditionalOnClass({TraceContext.class, SoaDubboConfig.class})
public class SoaSkyWalkingDubboConfig
{
@Bean
ApplicationModel applicationModel(ObservationRegistry observationRegistry)
{
ApplicationModel applicationModel = ApplicationModel.defaultModel();
applicationModel.getBeanFactory().registerBean(observationRegistry);
return applicationModel;
}
}
Would you like to fix it?
I don't hava time ...
How do you collect trace from Java Process? Please show me the configuration thanks.
@Bean @Primary @ConditionalOnMissingBean ObservationRegistry observationRegistry(List<MeterObservationHandler<?>> handlers, ObservationPredicate predicate) { ObservationRegistry registry = ObservationRegistry.create(); registry.observationConfig() .observationHandler( new ObservationHandler.FirstMatchingCompositeObservationHandler( new SkywalkingMeterHandler(new SkywalkingMeterRegistry()))) .observationHandler( new ObservationHandler.FirstMatchingCompositeObservationHandler(handlers)) .observationHandler( new ObservationHandler.FirstMatchingCompositeObservationHandler( new SkywalkingSenderTracingHandler(), new SkywalkingReceiverTracingHandler(), new SkywalkingDefaultTracingHandler())) .observationPredicate(predicate); return registry; }@AutoConfiguration @ConditionalOnClass({TraceContext.class, SoaDubboConfig.class}) public class SoaSkyWalkingDubboConfig { @Bean ApplicationModel applicationModel(ObservationRegistry observationRegistry) { ApplicationModel applicationModel = ApplicationModel.defaultModel(); applicationModel.getBeanFactory().registerBean(observationRegistry); return applicationModel; } }
okay,let me test it pls wait.