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

Specify the result of /schemas URL in the telemetry schema portion of the specification. #3762

Open
svrnm opened this issue Nov 13, 2023 · 7 comments
Assignees
Labels
area:semantic-conventions Related to semantic conventions spec:miscellaneous For issues that don't match any other spec label triage:accepted:ready-with-sponsor Ready to be implemented and has a specification sponsor assigned

Comments

@svrnm
Copy link
Member

svrnm commented Nov 13, 2023

What are you trying to achieve?

Context:

We see many users looking for a page that provides them with a list of available schemas, either because they want to know what the latest version is or they want to create some automation to crawl the list of published schemas and do something with them.

As of today opentelemetry.io/schemas gives a 404.

What did you expect to see?

There are 2 audiences we want to serve:

@chalin proposed that https://opentelemetry.io/schemas/ provides a response based on the HTTP request:

This means, someone who wants a machine readable format would go to:

$ curl -H "Accept: application/json" https://opentelemetry.io/schemas/
... # JSON data response

Someone who wants a human readable format goes to

$ curl -H "Accept: text/html" https://opentelemetry.io/schemas/
... # HTML data response

As discussed in the SIG SemConv call today, we would like to see this "list of available schemas" being specified and then later implemented by us (@open-telemetry/docs-approvers) on the website.

Ideally this starts with a simple JSON (or YAML?) file that just lists the available schemas + their URL.

Additional context.

We have a proposal for an intermediate solution at open-telemetry/opentelemetry.io#3469, this would still give a 404 but that specific 404-page would contain the information people are looking for.

cc @chalin @jsuereth @MrAlias @tigrannajaryan

@svrnm svrnm added the spec:miscellaneous For issues that don't match any other spec label label Nov 13, 2023
@chalin
Copy link
Contributor

chalin commented Nov 13, 2023

@jsuereth et al. - we can generate the machine-reable format (maybe in YAML given that the schemas are in YAML) on the OTel website side, from the list of schemas obtained from the semconv repo. This is now the human-readable list is produced: https://deploy-preview-3508--opentelemetry.netlify.app/schemas/list/

@chalin
Copy link
Contributor

chalin commented Nov 14, 2023

@jsuereth, @tigrannajaryan, @open-telemetry/specs-semconv-approvers, et al. - here's an implementation of the schema list in YAML:

Is this the format you wanted?

@svrnm
Copy link
Member Author

svrnm commented Nov 14, 2023

@jsuereth, @tigrannajaryan, @open-telemetry/specs-semconv-approvers, et al. - here's an implementation of the schema list in YAML:

* [Add `/schemas` in YAML, `/schemas/list` in HTML, and a 404 page for the rest opentelemetry.io#3537](https://github.com/open-telemetry/opentelemetry.io/pull/3537)

Is this the format you wanted?

Thanks, @chalin! @open-telemetry/specs-approvers / @open-telemetry/specs-semconv-approvers the current implementation is a basic list with the version numbers (see the PR), so what we need from you are some suggestions what this list should look like:

  • Do we need the URLs alongside the versions or can they remain implicit?
  • Should that list be contained in some object

@chalin
Copy link
Contributor

chalin commented Nov 14, 2023

During today's Spec SIG meeting, @jsuereth kindly offered to champion an OTEP for the addition of the schema-list to the OTel spec. Thanks Josh! Please cc @svrnm and me on the OTEP so that I can track progress, and link to it here.

@chalin
Copy link
Contributor

chalin commented Nov 15, 2023

@tigrannajaryan @jsuereth: it is my understanding that to move forward we need two things:

While it makes sense to have the schema-list format as part of the OTel spec, IMHO, the actual schema-list file needs to live in the semantic-conventions repo along with the schemas that it lists. Does that make sense?

@jsuereth jsuereth added area:semantic-conventions Related to semantic conventions [label deprecated] triaged-accepted [label deprecated] Issue triaged and accepted by OTel community, can proceed with creating a PR labels Nov 15, 2023
@jsuereth jsuereth changed the title Add a list of available schemas to Telemetry Schemas Specify the result of /schemas URL in the telemetry schema portion of the specificaiton. Nov 15, 2023
@arminru arminru changed the title Specify the result of /schemas URL in the telemetry schema portion of the specificaiton. Specify the result of /schemas URL in the telemetry schema portion of the specification. Nov 15, 2023
@jsuereth jsuereth assigned jsuereth and unassigned arminru Nov 15, 2023
@svrnm svrnm added triage:accepted:ready-with-sponsor Ready to be implemented and has a specification sponsor assigned and removed [label deprecated] triaged-accepted [label deprecated] Issue triaged and accepted by OTel community, can proceed with creating a PR labels May 6, 2024
@svrnm
Copy link
Member Author

svrnm commented May 6, 2024

using the new labelling, @jsuereth I assume that you are the sponsor of this?

@austinlparker austinlparker moved this to Spec - Accepted in 🔭 Main Backlog Jul 16, 2024
@austinlparker austinlparker moved this from Spec - Accepted to Spec - In Progress in 🔭 Main Backlog Jul 16, 2024
@svrnm
Copy link
Member Author

svrnm commented Aug 1, 2024

any updates on this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:semantic-conventions Related to semantic conventions spec:miscellaneous For issues that don't match any other spec label triage:accepted:ready-with-sponsor Ready to be implemented and has a specification sponsor assigned
Projects
Status: Spec - In Progress
Development

No branches or pull requests

4 participants