Skip to content
This repository has been archived by the owner on Aug 2, 2021. It is now read-only.

swarm/network, swarm/storage: Preserve opentracing contexts #1182

Closed
wants to merge 7 commits into from

Conversation

nolash
Copy link
Contributor

@nolash nolash commented Feb 1, 2019

This PR is an incremental part of #1181 whose description is:

At the moment if you send a GET request to Swarm for a specific content, you don't get proper tracing information in Jaeger, because the context propagation is broken.

We need to fix this, so that we can see detailed traces of specific GET (or POST) requests and compare fast requests to slow requests in order to understand why we have a high variance for upload/download in smoke tests.


Specifically, the effect of this PR should be that the current context path is in correct hierarchical order:

  1. HTTP GET
  2. LazyChunkReader Read/Size/Seek
  3. Stream request
  4. Stream deliver

Furthermore, within the stream package it also makes sure the trace span finish executes after protocol message transmission has been completed (before it only measured the time it took to insert a message into the priority queue)

@nolash nolash self-assigned this Feb 1, 2019
@nonsense
Copy link
Contributor

nonsense commented Feb 8, 2019

Great work! I ran the smoke tests on your branch and they are passing (meaning no regressions). This is a big improvement in terms of tracing.

screen shot 2019-02-08 at 14 56 50

@nolash
Copy link
Contributor Author

nolash commented Feb 8, 2019

Submitted upstream ethereum/go-ethereum#19022

@nolash nolash closed this Feb 8, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants