Skip to content
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

Semconv schema: add a field to record a version attribute was added in #1138

Open
lmolkova opened this issue Jun 10, 2024 · 4 comments
Open
Labels
tooling Regarding build, workflows, build-tools, ...

Comments

@lmolkova
Copy link
Contributor

It could be useful in code documentation - e.g. it's a common practice in Java to add @since annotation (helps when debugging version conflicts and other similar problems).

Also, there could be cases when we need conflict resolution based on this property open-telemetry/semantic-conventions-java#75 (comment)

@arminru
Copy link
Member

arminru commented Jun 11, 2024

Weaver would be able to also determine this programmatically by walking through the schemas folder without having to introduce a dedicated field, right? cc @lquerel

@trask
Copy link
Member

trask commented Jun 11, 2024

Weaver would be able to also determine this programmatically by walking through the schemas folder without having to introduce a dedicated field, right? cc @lquerel

the schemas folder currently only includes attributes that have a schema transformation, or is this a new proposal where we include the full set of attributes in the schema?

@lmolkova lmolkova added the tooling Regarding build, workflows, build-tools, ... label Jun 24, 2024
@lmolkova
Copy link
Contributor Author

I believe the proposal is to resolve multiple versions at the same time and populate metadata based on git history.

If we go down this route, we can as well cache it somewhere (maybe separately from semconv yaml files) to avoid resolving all past versions or adding versions manually.

@lquerel
Copy link
Contributor

lquerel commented Jun 25, 2024

Once the schema format for the resolved registries is fixed and approved, we could indeed archive a file per registry version. This approach has the advantage of: 1) allowing Weaver to quickly compare versions and infer attributes like 'since'; 2) enabling external tools to access registries easily without reinventing the wheel regarding resolution. The resolved format, no longer having references, extends, embeds, etc., will also be more robust to this type of semconv author oriented field.

However, I think a field is missing at the attribute level that identifies if an attribute 'x' is the result of renaming an attribute 'y'. Without this information, it is IMO not possible to distinguish between a renaming and a deletion of an attribute and the creation of another unrelated attribute. We could use transformations in the telemetry schema, but I believe the idea was to generate these schemas automatically from Weaver. Therefore, it is necessary to have a field at the attribute level in the semconv group.

EDIT: adding @jsuereth

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tooling Regarding build, workflows, build-tools, ...
Projects
Development

No branches or pull requests

5 participants