Skip to content

Exception in instrumenting Spring Cloud Stream with Solace Binder #33

Description

@hctsang96

Hi all,

In my spring boot app, I used Spring Cloud Stream (with Solace binder), and tried to integrate with Open Tracing API implementation for Spring Cloud (which supports Spring Cloud Stream) but failed with the stack trace as below, probably due to incompatible data type (not supported by Solace SDTMap) of Open API info in message header.

My question is if I can DISABLE the instrumentation related to Spring Cloud Stream, such that I can have the transaction complete normally, and able to keep using OpenTracing API for most of instrumentation.

Any advice is welcome!
Thanks

[account-web-v1-7ff588d759-hbqqr account] 2020-05-13 09:21:06.610 ERROR 1 --- [ask-scheduler-6] o.s.integration.handler.LoggingHandler   : org.springframework.messaging.MessageHandlingException: error occurred in message handler [org.springframework.cloud.stream.binder.AbstractMessageChannelBinder$SendingHandler@31c62948]; nested exception is com.solace.spring.cloud.stream.binder.util.SolaceMessageConversionException: java.lang.IllegalArgumentException: Invalid type as value - ThreadLocalScope, failedMessage=GenericMessage [payload=byte[14], headers={messageSent=true, id=0ecc2e6c-6585-a781-00db-d613a97bb696, contentType=application/json, io.opentracing.contrib.spring.integration.messaging.OpenTracingChannelInterceptor.SCOPE=io.opentracing.util.ThreadLocalScope@72c13964, uber-trace-id=b69af8c09af7a43f:b69af8c09af7a43f:0:1, timestamp=1589361666604}]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions