-
Notifications
You must be signed in to change notification settings - Fork 717
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spring-jms support #778
Comments
when we do this we have to be very careful when wrapping as there is dispatch logic like this: package org.springframework.jms.config;
public abstract class AbstractJmsListenerEndpoint implements JmsListenerEndpoint {
@Override
public void setupListenerContainer(MessageListenerContainer listenerContainer) {
if (listenerContainer instanceof AbstractMessageListenerContainer) {
setupJmsListenerContainer((AbstractMessageListenerContainer) listenerContainer);
}
else {
new JcaEndpointConfigurer().configureEndpoint(listenerContainer);
}
} For example, the type |
PS the TracingMessageListener which we use internally in JmsTracing won't be used for something like Spring in the same way. the Our tests should prove there is only one CONSUMER span in other words, to ensure no double-instrumentation. https://github.com/openzipkin/sleuth-webmvc-example/compare/add-jms-tracing |
to the point about dual hierarchy:
|
added a commit to https://github.com/openzipkin/sleuth-webmvc-example/compare/add-jms-tracing which adds receiver spans for basic message listeners. Will test more later |
branch now works with all listeners except JCA. will try to wrap that up tomorrow.. We also need to test topic subscription to ensure there are no state problems (like listeners getting exact same instance of JMS Message and therefore getting into overlap writes trouble) |
@adriancole any news? |
Checkout the add-jms-tracing branch, the jms sending is OK, but listener doesn't work. Also, need add spring.main.allow-bean-definition-overriding=true to start the backend. Would you please provide a working sample for the 2.1.0 release? |
@frankpolkm can you clarify if you are primarily interested in usage via sleuth or brave directly? |
#584 added JMS support, including message listeners. Not all libraries use
JMSConsumer.setMessageListener(listener)
orMessageConsumer.setMessageListener(listener)
. Notably, spring supports other means to invoke. This means we'll need to provide hooks to wrap similarly when in Spring.This likely means handling the following:
The text was updated successfully, but these errors were encountered: