-
Notifications
You must be signed in to change notification settings - Fork 182
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
HTTP span status: use SHOULD instead of MUST for errors #1167
Conversation
I expressed my concerns on the issue, adding it here as well for reference. I think relaxing this part of the spec will open up the door for very different implementations. All the things mentioned in the PR description are valid and I agree the spec could accommodate those things. But none of that information will be part of the spec, instead what the PR does is that it just relaxes the spec without adding any guidelines to the implementations. I personally would take a different approach and add the specific cases into the spec (from the PR description) and explicitly allow skipping error reporting in those cases. But then I'd still have the existing language with the To take a concrete example: assume there is a genral HTTP library Admittedly, based on #1003 it seems I'm in the minority with this opinion. Just wanted to raise it here as well before this gets merged. |
Based on the current implementations I have seen, it's often a dedicated HTTP library which creates the spans and marks them as errors. How about adding a mention inviting libraries to let users define their own error behavior? |
+1, would this change generate more clarity, or it'll actually make things more confusing? |
The semantic conventions don't specify how libraries provide configuration or extensibility. With configuration it's being unified, but dynamic enrichment/customization is not (yet). While I want instrumentations to let users customize it, I don't want to encourage it without providing any common mechanism. |
I'm open to specific suggestions, but I don't see how it can be clarified without being confusing. There is still a discussion going on here #1003 (comment) |
I added the following note in attempt to provide clarity, LMK if it helps
|
63928c1
to
2d098c4
Compare
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.
The added note addresses my concerns - thanks for that.
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
Fixes #1003
Changes
HTTP status codes are not always sufficient to classify response as an error (or no error).
It depends on the context.
For example:
HTTP instrumentation libraries don't usually have enough context, but in some cases they do:
Current HTTP semconv REQUIRE to set status to
Error
under specific conditions, this PR relaxes it and usesSHOULD
instead ofMUST
.Merge requirement checklist
[chore]