Skip to content

Instrument spring integration. #15

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

Merged
merged 8 commits into from
Aug 12, 2015
Merged

Instrument spring integration. #15

merged 8 commits into from
Aug 12, 2015

Conversation

spencergibb
Copy link
Member

Via a global channel interceptor that adds headers to messages.

fixes gh-14

For review @dsyer @garyrussell @artembilan

protected void populatePropagatedContext(Span span, Message<?> message,
MessageChannel channel) {
if (span != null) {
Span currentContext = getCurrentSpan();
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm still fuzzy on what I should be doing with the span here. This is leftover from SecurityContextPropagationChannelInterceptor.

@artembilan
Copy link
Member

@spencergibb , @dsyer , your PR is on our radar.
Let us know how quickly you need a feedback from us.
The next week is a "release" one for us, so we are very busy right now to wrap up everything we want for them.

Thanks for your patient!

spencergibb and others added 2 commits August 10, 2015 08:24
Via a global channel interceptor that adds headers to messages.

fixes gh-14
The client recv/send events have no meaning in a messaging
context, so we don't need to send them. Also added a new
protected method as the inverse of populatePropergatedContext.

Rebased on master and fixed conflicts.

See gh-15
@dsyer dsyer force-pushed the spring-integration branch from c49fb43 to cfd6fe6 Compare August 10, 2015 08:01
@dsyer
Copy link
Contributor

dsyer commented Aug 10, 2015

@spencergibb I rebased onto master with that last commit. I see what you are doing now, and it's quite narrowly restricted to thread context propagation. We need more components so we can actually manage the context (create spans, mark them as ended etc.) when messages enter and leave the system. That is probably going to be harder, so maybe we need to ask @artembilan and Gary for help. Or maybe it needs to be aware of spring-cloud-stream (cc @markfisher).

Dave Syer added 6 commits August 11, 2015 18:11
There was an ordering error in the conditions as well, causing the
wrong async customizers to be registered. Another issue was the
servlet async processing (request atribute not cached in all branches)
resulting in multiple spans per request.
So that it can be used to keep the MDC populated when an async request
is continued.

Fixes gh-18
This might not be the ultimate solution but it should give us
something to look at and collect some data. It doesn't solve the
sampling problem, or the headers copying problem.

See gh-14
@dsyer dsyer merged commit 47dee39 into master Aug 12, 2015
@dsyer dsyer deleted the spring-integration branch August 12, 2015 13:46
marcingrzejszczak pushed a commit that referenced this pull request Mar 24, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Instrumentation for spring integration
3 participants