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

Automate OTEL Schema Generation and Update Process with Migration Guide Support #186

Open
2 of 5 tasks
lquerel opened this issue May 29, 2024 · 1 comment · May be fixed by #400
Open
2 of 5 tasks

Automate OTEL Schema Generation and Update Process with Migration Guide Support #186

lquerel opened this issue May 29, 2024 · 1 comment · May be fixed by #400
Assignees
Labels
enhancement New feature or request

Comments

@lquerel
Copy link
Contributor

lquerel commented May 29, 2024

To properly support multiple registries with Weaver, we need to automatically generate the OTEL schema for a new version of a registry before packaging and publishing it. This issue focuses on defining the necessary steps to update the OTEL schema in an automated and controlled manner, based on changes described in the SemConv files.

Tasks:

  • Identify the best approach to track renamings and deletions in SemConv. See the discussion here.
  • Specify the format and structure of the file used to track the SemConv registry name, version, schema location, and other details. See the related discussion below.
  • Implement otel-registry-manifest.yaml and the new format for the deprecated field.
  • Create a sub-command to generate a new version of the telemetry schema.
  • Create a sub-command and/or template to generate the migration guide for a specific version. See the discussion on the migration guide.

A new file, otel-registry-manifest.yaml, located at the root of the models directory, will be used by Weaver to generate the next version of the OTEL schema and update the migration guides. The file will have the following structure:

EDIT: The following file structure has been revised based on the SemConv Tool SIG discussion.

# File otel-registry-manifest.yaml
name: <registry_name>                              # e.g., otel
description: <registry_description>
semconv_version: <registry_version>                # e.g., 1.27.0
schema_base_url: <url>                             # e.g., https://opentelemetry.io/schemas/

# This file will be extended in the future to support multiple registries.
# Fields such as `registry_base_url`, `owners`, `maintainers`, `dependencies`, and more will be added later.
@lquerel lquerel added enhancement New feature or request help wanted Extra attention is needed labels May 29, 2024
@lquerel lquerel changed the title Automatically generate a new version of the telemetry schema and the migration guide with each new release of the semconv Automate OTEL Schema Generation and Update Process with Migration Guide Support Oct 2, 2024
@lmolkova
Copy link
Contributor

lmolkova commented Oct 2, 2024

name: <registry_name>                      # e.g., otel
description: <registry_description>
semconv_version: <registry_version>                # The version number of the current registry.
url: <registry url> # Uniquely identifies a registry source and where schema with `version` can be downloaded from, it has all the versions ever published

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: To consider for the next release
Development

Successfully merging a pull request may close this issue.

2 participants