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

Introduce Schema URL in Tracer and Meter API #1666

Conversation

tigrannajaryan
Copy link
Member

@tigrannajaryan tigrannajaryan commented Apr 30, 2021

This adds to the API the changes proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

I will submit corresponding changes to the proto repository separately.

@tigrannajaryan tigrannajaryan requested review from a team as code owners April 30, 2021 20:44
@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch 4 times, most recently from fb2a4a9 to a144686 Compare April 30, 2021 21:07
@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch from 2ebeed3 to 903997b Compare May 6, 2021 18:29
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 6, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:
- Populate the schema_url field in the OTLP after this PR
  open-telemetry/opentelemetry-proto#298
  is merged and the field is available in the proto message.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 6, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:
- Populate the schema_url field in the OTLP after this PR
  open-telemetry/opentelemetry-proto#298
  is merged and the field is available in the proto message.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 6, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:
- Populate the schema_url field in the OTLP after this PR
  open-telemetry/opentelemetry-proto#298
  is merged and the field is available in the proto message.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 6, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:

Populate the schema_url field in the OTLP after this PR
open-telemetry/opentelemetry-proto#298
is merged and the field is available in the proto message.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 6, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:

Populate the schema_url field in the OTLP after this PR
open-telemetry/opentelemetry-proto#298
is merged and the field is available in the proto message.

This is the first in the series of changes that are necessary to add
support for schemas in Go SDK. Subsequent PRs will add support in Meter
and Resource. We will also see if we can find a good way to group
semantic conventions with the schema version that declares them.
@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch from 903997b to fc491f3 Compare May 7, 2021 15:31
@tigrannajaryan tigrannajaryan requested review from a team May 7, 2021 15:33
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 7, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:

Populate the schema_url field in the OTLP after this PR
open-telemetry/opentelemetry-proto#298
is merged and the field is available in the proto message.

This is the first in the series of changes that are necessary to add
support for schemas in Go SDK. Subsequent PRs will add support in Meter
and Resource. We will also see if we can find a good way to group
semantic conventions with the schema version that declares them.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 12, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 12, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
@tigrannajaryan
Copy link
Member Author

This seems good to me. I'm slightly concerned that this will get merged and released with spec v1.4.0 before we have an actual schema URL to use. Should we publish a schema before we merge this, so that language maintainers will have something to use?

@jkwatson I briefly discussed with @austinlparker and it appears it is fairly easy to publish schema files from this repo (which will be the source of truth for schemas) to the website where the schema files will be downloadable as https://opentelemetry.io/schemas/<version>.

Here is the draft plan: open-telemetry/opentelemetry.io#577

I think we are good to move forward with this PR.

We can add further checks and controls that prevents mistakes (e.g. ensures that the schema is always published when making a release or that if the semantic conventions is changed there is a corresponding entry in the schema file). This can be done gradually, it is not a blocker.

@tigrannajaryan
Copy link
Member Author

This is ready for the final pass by commenters who did not yet approve and can be merged tomorrow if there are no new comments.

@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch from 65b9b19 to ed15f3c Compare May 14, 2021 18:30
@tigrannajaryan
Copy link
Member Author

I believe this now addresses all comments. Please have another look.

tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 14, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch from e1fbe5e to 3775615 Compare May 17, 2021 18:09
@tigrannajaryan
Copy link
Member Author

This is now ready for merging. I squashed all commits into one. Will merge tomorrow if I don't hear any objections.

tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 17, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
This adds to the API the changes proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Corresponding changes to the proto repository are here:
open-telemetry/opentelemetry-proto#298
@tigrannajaryan tigrannajaryan force-pushed the feature/tigran/introduce-schema branch from 61e5eae to 8dfa6bc Compare May 18, 2021 13:42
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 18, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
@tigrannajaryan tigrannajaryan merged commit 31122cd into open-telemetry:main May 18, 2021
@tigrannajaryan tigrannajaryan deleted the feature/tigran/introduce-schema branch May 18, 2021 13:57
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 18, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-specification that referenced this pull request May 18, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
open-telemetry#1666
tigrannajaryan added a commit that referenced this pull request May 18, 2021
This adds to the Resource SDK the concept of Schema URL proposed in OTEP 0152:
https://github.com/open-telemetry/oteps/blob/main/text/0152-telemetry-schemas.md

Related earlier PR that adds the Schema URL to the API:
#1666
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 19, 2021
[Do not merge, this is a draft to get maintainers' feedback]

This adds support for schema URL according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

TODO:

Populate the schema_url field in the OTLP after this PR
open-telemetry/opentelemetry-proto#298
is merged and the field is available in the proto message.

This is the first in the series of changes that are necessary to add
support for schemas in Go SDK. Subsequent PRs will add support in Meter
and Resource. We will also see if we can find a good way to group
semantic conventions with the schema version that declares them.
tigrannajaryan added a commit to tigrannajaryan/opentelemetry-go that referenced this pull request May 27, 2021
This adds support for schema URL to the Tracer according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

For the future: once the proto is updated we will need to populate the
schema_url field in the messages.
Aneurysm9 pushed a commit to open-telemetry/opentelemetry-go that referenced this pull request May 27, 2021
This adds support for schema URL to the Tracer according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

For the future: once the proto is updated we will need to populate the
schema_url field in the messages.
shbieng added a commit to shbieng/opentelemetry-go that referenced this pull request Aug 26, 2022
This adds support for schema URL to the Tracer according to the specification:
open-telemetry/opentelemetry-specification#1666
(Link to replaced by the link to the spec after that PR is merged)

For the future: once the proto is updated we will need to populate the
schema_url field in the messages.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet