-
Notifications
You must be signed in to change notification settings - Fork 174
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
BREAKING: Generate System metrics semconv from YAML + move attributes to their own namespace #89
BREAKING: Generate System metrics semconv from YAML + move attributes to their own namespace #89
Conversation
78f03af
to
1c00d0e
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.
As far as what was done in this PR, this LGTM.
- I agree with the namespaces you chose for attributes, as they line up w/ the metrics.
- I agree with the structure/breakdown in the YAML
- I think the final markdown looks good.
We should do one of two things with this PR:
- Open a (blocking) bug about providing guidance on how to deal with the breaking changes in system metrics.
- Advise instrumentation to continue using the older System metrics specification until the system metrics working group has had a chance to walk through their issues and declare this stable.
What does everyone think?
1c00d0e
to
e22e9fc
Compare
e22e9fc
to
6d7c1ce
Compare
This needs to be rebased after #99 is merged (or the other way round). |
I rebased and added the new metrics introduced in #99. @jsuereth As far as the plan goes, I think option 2 makes sense:
I think once the working group has looked at these metrics and decided they are good, then we can follow up with option 1 and add a issue to track how we will communicate the breaking change and add instructions. Additionally, we can also add a Notice to the markdown here, saying these have changed and for instrumentations to continue to use the previous version (point to the last release version). What do you think? |
Just to verify if I understood it correctly, this PR changes the attribute values of example |
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.
LGTM. Only two minor questions regarding state value members
In my opinion, it's hard to track the breaking changes in this PR. I'd suggest separate PR's: 1 for YAML generation with no changes and another one for the adoption of #51. But I'm good to merge as is if @open-telemetry/specs-semconv-maintainers disagree |
I definitely agree, but the "problem" is that since multiple metrics use the same attribute key with different semantics there's no way to define them once and share in YAML. The only way I see to convert the existing metrics to YAML keeping the attributes as-is is to duplicate them all over in the YAML definition. If folks think that's the best way to go, I can do that. But it's not a trivial amount of work for just being removed right after. I will work on this now, to add a changelog entry + the schema file that should highlight the breaking changes more easily. Maybe that helps. |
@dmitryax as we discussed in the SIG meeting yesterday, I changed the PR to revert the I updated the changelog/schema/my wall-of-text comment with the breaking changes summary to reflect this. Once you create the issue about your concern with the network attributes, please link it here. |
@joaopgrassi I submitted #308. We should probably do the same for other metric groups |
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.
LGTM to unblock further changes
…ontrib/semantic-conventions into feat/system-metrics-yaml
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.
cc @open-telemetry/semconv-system-approvers the cpu
attribute got renamed to system.cpu.logical_number
(see more in #89 (comment) ), please speak out if you disagree with the change
Don't want to block the merge of this but shouldn't the That's related to open-telemetry/opentelemetry-collector-contrib#26533 (comment). In order to not keep this one blocked we can revisit this as part of System SIG along with the others' attributes stabilization. |
Discussed how to move forward with this PR in the semconv sig meeting (Sept 11th).
@open-telemetry/specs-semconv-approvers @open-telemetry/specs-semconv-maintainers this is good to merge! |
Closes #73
This PR does:
Summary of breaking changes
A summary of the changes can be found in this comment. It can also be seen in other "formats" in the changelog + schema file.
Still need resolution from #51. There are several attributes in system metrics (e.g., state) that are used in different metrics but with different enum values.If we want to keep the markdown output as "short"state
, we will probably have to see what can be done with the tooling. With the current version of the PR, I have the attributes "namespaced" by using theattribute_group
feature in order to re-use the attribute across metrics.