-
Notifications
You must be signed in to change notification settings - Fork 897
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
Refactor trace semantic convention yaml structure #2019
Conversation
I think this PR deviates from what @tedsuo proposed:
An important different to me is that |
@tigrannajaryan Only traces and resources have YAML definitions, and I can't think of a way to combine them that would make sense. Restructuring to unify metrics/traces would need to happen in the markdown, since the metrics semconv is defined directly in the markdown.
Do logs have a semantic convention? I can't find it in the spec, so I haven't taken logs into consideration at all. Ted's PR says:
I'm trying to think of how to tackle these in terms of the YAML. In the name of centralization, we could:
If anyone has ideas about how to structure the yaml, would be interesting to hear. |
As a separate issue, I would argue that metrics and traces convention should be separate, due to use case and cardinality concerns. However, that doesn't mean that we can't make the semantic convention easier to navigate. Would like to hear people's thoughts on that too. |
Not right now in the spec, but yes, virtually every semantic convention that is defined for traces is also applicable to logs. We need to refactor the spec in a way that takes this into account, we just did not have time to do this. Since you are now doing this refactoring I think it is now a good time to address this problem. |
There is some overlap between traces and metrics as well (although not as much as between traces and logs). For example HTTP attributes: Things like There may be nuanced variations though (see e.g. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
@tigrannajaryan I would argue that metric attributes should be a subset of trace attributes (where applicable). @tedsuo also mentioned this recently in the instrumentation SIG. Perhaps somewhere in the metrics spec there should be some specification of this subsetting? It would help the metrics convention towards stability. I wonder how this could be achieved. |
Changes
I've refactored the semantic convention yaml so it lines up with @tedsuo's draft PR #1977. This is an initial piece of work which precedes refactoring the markdown into a similar structure.
The structure is as follows:
I deleted the
aws
folder as it had one filelambda.yaml
and moved it underfaas/implementations
.Additionally,
make table-generation
produces no changes to the markdown, so it looks like it isn't breaking anything.Why restructure?
It has been raised on several occasions that the semantic convention is becoming bloated with implementation-specific conventions. This is the first step to separating them out.
This will help the semantic convention towards stability because we will be able to declare the "core" conventions as stable, while the "implementations" can remain experimental.
Related issues #