This past week, the W3C Distributed Tracing Working Group workshop was held. Workshops are held for many years twice a year by now and help bring people together. This time it was a virtual presence event for a second time. The main topic for the workshop was practical use of specifications. We discussed in-depth scenarios for response headers, adopting specification for other protocols, baggage specification next steps, and battle stories.
We had 15 participants this time – lower than for regular in-person workshop, but higher than the last Virtual Presence workshop. We had attendants from Confluent, Dynatrace, Facebook, Google, IBM, Instana, Lightstep, Microsoft, New Relic, and Salesforce.
The finding from this meeting is that we need to make sure to advertise the agenda with the specific time in advance to ensure attendance for the specific topics.
The main addition of level 2 Trace Context specification is addition of a response headers. At this workshop we summarized and prioritized scenarios we are trying to solve with the response headers. A few action items were identified to align the proposal for the adjusted priorities of scenarios and we hope that proposed changes would be better aligned with everybody’s needs.
As the group agreed on the general shape of the baggage specification and discussed the adoption of it with the OpenTelemetry project, baggage specification went into the First Public Working Draft status.
We discussed the current state of all protocols we are tracking implementation for. Issues for these repositories now reflect the list of open questions and we are discussing whether more generic cross-protocols guidance needs to be published by this working group.
Andrew from Microsoft brought for discussion the proposal for trace context implementation for JSON-RPC. See the discussion on JSON-RPC mailing list.We are excited with the increased number of technologies adopting the distributed tracing practices and standards.
Morgan described how Google keeps marching towards adopting the standard and deals with transition from older headers to the trace context. It is great to see that some customers may be ahead in adopting standards than some big platforms.
Kanwal from Microsoft gave a deep dive into the problem of tracking external and internal telemetry and how tracestate can be used there. Sampling flag introduces some complication as it’s shared for both – internal only calls and external (on the boundary) calls.
Multiple tracers usage by a single app becoming more challenging with the use of a unified protocol, shared Matt from Lightstep. Daniel from Dynatrace said that tracestate helps a lot in these scenarios to keep traces connected.
Other Daniel (yes, there are two) from Dynatrace shared the success of adopting OpenTelemetry. This is very useful that the open source software is compatible with proprietary software and standards developed by this group helps with this compatibility. Bastian from Instana echoed this success of standardization. There are still some gaps that can be addressed in a spec long term and we need to keep track of real world adoption of our standards.
There were more topics discussed at the workshop. Different ways to use tracestate, privacy concerns and others. If you want to find out more, read full notes: W3C Trace Context October 2020. Recordings will be posted later on the group website. Previous workshop details: W3C Distributed Tracing Working Group Virtual Presence Workshop, March 2020 | W3C Blog
Distributed Tracing Working Group is a friendly and welcoming group and we will be happy to have you join us. Come to the next workshop, or just come talk to us. There are many ways to communicate: ways to communicate with us.