Giter VIP home page Giter VIP logo

Comments (6)

dyladan avatar dyladan commented on August 20, 2024

I think we should probably just remove the wording that states this is a companion to traceparent. It solves an entirely different problem and could be propagated with or without trace context.

from baggage.

justinfoote avatar justinfoote commented on August 20, 2024

I agree. They're two separate things, with mostly non-overlapping use cases.

But even if we don't remove the line about correlation context being a companion to traceparent, this doesn't feel too inconsistent to me. Some parts of the spec are mandatory (traceparent and tracestate), and some parts of the spec are optional (correlation context).

from baggage.

codefromthecrypt avatar codefromthecrypt commented on August 20, 2024

Thanks @anuraaga the spec you mentioned is the only reason why brave's impl is nonsensically dropping good data in tracestate when traceparent doesn't exist.

To carry B3 (in tracestate) without traceparent is much easier than with it as the traceparent header, especially how it defines sampled is of no use except ID correlation. We have to ignore it basically.

from baggage.

anuraaga avatar anuraaga commented on August 20, 2024

It's an interesting point about keeping tracestate even if parent gets lost to at least have something to work with.

It feels like that also fits the MUST propagate model well - header in, header out should generally give more functionality to users.

I guess I'm still not clear on, is this one of the larger bucket of w3c trace header, so it's an optional feature (leaving it up to the user to manage libraries to get the features they need)? Or is it an independent feature. The replies give me both impressions. If it is an independent feature, surely we want that to mandate propagation so context parameters don't get lost?

from baggage.

dyladan avatar dyladan commented on August 20, 2024

I see correlation context as a separate feature from trace context.

@adriancole if we allow propagation of tracestate without traceparent, that would violate what I view as one of the most important parts of the trace context spec which is interoperability between tracing systems. If one implementation only needs tracestate and doesn't create a traceparent, they are potentially breaking the traces of other systems.

In any case, I don't think that should apply to correlation context, which should be allowed to be propagated without a trace context.

from baggage.

danielkhan avatar danielkhan commented on August 20, 2024

We will remove traceparent wording and change to SHOULD

from baggage.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.