-
Notifications
You must be signed in to change notification settings - Fork 77
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
Create first draft of the use cases document #425
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Use Cases for response Headers | ||
|
||
The [Response Header Specification](https://github.com/w3c/trace-context/blob/master/spec/21-http_response_header_format.md) defines the format for response headers. | ||
|
||
As response headers solve (largely) different use cases, this doc aims to collect them and also address possible implications, like privacy issues. | ||
|
||
This document is a loose, unordered and ongoing collection. | ||
|
||
## Usecase 1: Report the proposed parent ID back to the caller | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Here is another use case - Currently some of the Azure Control Plane APIs return Correlation Id as part of the response header which can then be used by the customer on reporting an issue or contacting us. We would like to have teams transition to using the standard W3C trace content and returning this as standard response header. Having the trace context in the form of the traceresponse header would make this easy for customers and enable us to pinpoint issues. |
||
A system, like a browser, can not create a trace ID and span ID. | ||
The callee could generate the parent ID and then send it back to the caller via response header. | ||
This parent ID would represent the parent of the spans created by the callee. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While it is good you describe use cases for such things I believe those should be self described. For example, why some systems can't create a trace ID and span ID, why the caller would need a parent ID? Does the parent ID is enough info without the trace ID?
Use case as it is feels like describing the what and not the why.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This topic has been well discussed and is niche at best. It doesn't deserve the "usecase 1" if anything "honorable mention"
Returning trace IDs is far more frequent for putting traces together without this odd notion of "proposed parent ID". Maybe you can put more routine things here by looking at the issues leading up to this or asking users.
For example, this issue from over 4 years ago catalogs some ideas with real people who were interested openzipkin/b3-propagation#4