-
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
Group yaml files by root namespace instead of signal #1345
Group yaml files by root namespace instead of signal #1345
Conversation
This seems to be somewhat related to this discussion (which is limited to events) #925 |
+1 on the above proposal -1 on the extended idea from the SIG meeting today on also including registry files into the domain directories. IMHO, that would cause confusion again about mixing definition with usage (i.e. referencing) of attributes. |
19ed86e
to
6e4fb0a
Compare
@AlexanderWert, I'd like to understand the concern better. I don't see how this PR changes the status quo wrt registry:
Reasons why I want to have registry attributes in the domain folder:
WDYT? |
cf8e687
to
1cf7120
Compare
I think the main question is: Is Let me try to illustrate that by a concrete example:
So far so good. And like that proposal, so far.
The proposal of including the registry files into the domains raises following confusion and inconsistencies:
So, my main concern is about the confusion of mixing By keeping the attributes registry (also in the yaml) structure, we clearly do a separation of concerns (definition vs. usage of attributes) and avoid the confusion about namespaces and semantical domains. |
@AlexanderWert there is a I don't see how this PR changes anything around it - if there is a confusion between domain and namespace, it already exists.
We do keep the separation of concerns with this PR, I'd like to bring your attention back to the fact that separate folder is a very weak separation, and we have better means to enforce it. Given that co-locating strongly related files significantly improves semconv development ergonomics and folder structure is internal implementation detail, I would still prefer to keep attribute definitions along with the span/metric/event definitions. |
What
I disagree with that! As explained above, right now, the only place where attributes are defined is the registry folder. Everywhere else attributes are only referenced (i.e. used in a concrete context). So, right now it's very clearly separated and those two concepts of domains and namespaces are not mixed at all. As of today, the explicit registry allows for low barrier for introducing new (experimental) attributes. This was requested in this OTEP and that OTEP was closed because of the registry existing as an explicit thing. If there is no explicit registry folder anymore that allows to decouple definition of attributes from their usage, we raise the need of that OTEP again. Because then one couldn't easily just define attributes, but would always need to create a domain first. This loose coupling of attribute definition and attribute usage in context is an important tool for easier achievement of the ECS <--> SemConv merger , as well.
Yes, I'm aware that we have the tools that would allow to reconstruct an explicit, centralized registry in the docs from a less explicit, decentralized definition of the registry. BUT, again, we would couple attribute definition to domain again, which defeats one of the original purposes of the registry. So, IMHO by doing that we would do a step back and sort of (not entirely) land where we were before.
I don't see why it's so important to have the attributes defined in the domain folders as it wouldn't make a huge difference in development ergonomics as long as we do the rest of the domain grouping nicely. Can't we just keep the registry separate, centralized, grouped by namespaces and explicit as it is now and just do the domain grouping for the actual definition of the semantics around domains? I'd love to hear what others think. |
@AlexanderWert is there a solution that would work for you that does not depend on the folder structure? We have ~100 files in the registry folder now and will have much more over time. It creates some problems:
Could you please suggest some ways that would preserve the registry status AND allow to organize yaml folders in this repo in convenient way? If the folder structure is the only way, then can you explain how it helps or makes anything different? We have semconv tooling meeting on Wed at 7am PST (tomorrow), would you be able to make it? I'd be great to discuss over the call and there will be other people there. |
60924e1
to
edbecf3
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.
I really like the direction here, and appreciate the cleanup I'm seeing.
Approving the direction, have a few nits and of course, we may need to pause other merges for you to be able to get this in. Let's discuss in today's meeting!
3310b74
to
12d3674
Compare
12d3674
to
b8b178d
Compare
Proposal to change code organization for yaml files.
Now:
proposal
Pros:
TODO:
Merge requirement checklist
[chore]