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

Refactor semantic conventions structure #2397

Open
tigrannajaryan opened this issue Mar 3, 2022 · 0 comments
Open

Refactor semantic conventions structure #2397

tigrannajaryan opened this issue Mar 3, 2022 · 0 comments
Labels
area:semantic-conventions Related to semantic conventions help wanted Extra attention is needed

Comments

@tigrannajaryan
Copy link
Member

Many of the upcoming conventions for logs will need to be shared with conventions for traces. The current structure complete isolates the signals into separate directories which makes such sharing of conventions difficult, requiring duplication which is hard to maintain.

We need to refactor the conventions to make sharing between signals easy. One possible approach was started here #1977

Copying the proposal from that PR below, however there may other ways to enable sharing too, this is open for discusison.

--

Proposed changes:

  • Centralize the location of all semantic conventions, rather than split them across many subsections of the spec.
  • Create one folder per topic (HTTP, faas, messaging, etc). All relevant tracing, metric, and resource conventions are combined into these topics.
  • Move all implementation-specific conventions (HBase, AWS lambda, etc) to an /implementation folder under each topic.

The new layout can viewed here, on the branch in GitHub.

Example layout:

-- semantic_conventions/
   -- database/
        database.md
        sql.md
        --implementations/
            cassandra.md
            dynamodb.md
            hbase.md
            mongodb.md
            mysql.md
            redis.md

Goals:
This new layout should make it easier to browse and comprehend all of the available semantic conventions. This should also make it easier to assign domain experts as codeowners for each convention. It also makes it easier to see how most implementations are underspecified. This will help the Semantic Conventions / Instrumentation SIG move forwards.

This PR only attempts to take separate and recombine the concepts currently described in the spec, while changing the wording as little as possible. It does not attempt to adjust any concepts or clarify existing any descriptions. Once the refactor is complete, approvers should be assigned to each convention so that we can begin processing improvements to the spec.

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 help wanted Extra attention is needed
Development

No branches or pull requests

2 participants