Skip to content

Clarify schema URL ownership by telemetry domain - #20747

Merged
laurit merged 6 commits into
mainfrom
copilot/cleanup-schema-url-ownership
Oct 21, 2026
Merged

laurit merged 6 commits into
mainfrom
copilot/cleanup-schema-url-ownership

Conversation

Copilot AI commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Give HTTP, database, messaging, and GenAI schema URLs domain-specific internal owners so convention versions can evolve independently. Keep RPC schema lookup with its captured convention mode.

Emitted schema URLs and attribute-based inference are unchanged. The GenAI definition prepares explicit signal wiring without changing existing telemetry.

Fixes #20413.

@opentelemetry-pr-dashboard

opentelemetry-pr-dashboard Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Pull request dashboard status

Merged · refreshed 2026-10-21 06:25 UTC

Status above doesn't look right?
  • Anything look wrong? Report it with what you expected; it helps us improve the dashboard.

Copilot AI changed the title [WIP] Cleanup schema URL ownership for behavior preservation Clarify schema URL ownership by telemetry domain Oct 20, 2026
Copilot AI requested a review from trask October 20, 2026 02:27
@trask
trask requested a balanced review from Copilot October 20, 2026 02:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The refactor preserves schema values and RPC selection behavior, with no unresolved blocking findings.

No open issues 🎉

What changed in this PR

Clarifies schema URL ownership within the instrumentation codebase while preserving emitted schemas and instance-scoped RPC selection.

Changes:

  • Centralizes database and messaging schema URLs in internal domain owners.
  • Derives RPC schema URLs from the captured selection.
  • Consolidates repeated GraphQL and Couchbase schema values.
File Description
instrumentation/​lettuce/​lettuce-5.0/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​lettuce/​v5_0/​LettuceSingletons.java Uses database schema owner.
instrumentation/​lettuce/​lettuce-4.0/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​lettuce/​v4_0/​LettuceSingletons.java Uses database schema owner.
instrumentation/​jdbc/​library/​src/​main/​java/​io/​opentelemetry/​instrumentation/​jdbc/​internal/​JdbcInstrumenterFactory.java Uses database schema owner.
instrumentation/​graphql-java/​graphql-java-common-12.0/​library/​src/​main/​java/​io/​opentelemetry/​instrumentation/​graphql/​common/​v12_0/​internal/​OpenTelemetryInstrumentationHelper.java Shares local schema constant.
instrumentation/​couchbase/​couchbase-3.2/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​couchbase/​v3_2/​CouchbaseRequestTracer.java Unifies trace and log schemas.
instrumentation/​couchbase/​couchbase-3.1/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​couchbase/​v3_1/​CouchbaseRequestTracer.java Unifies trace and log schemas.
instrumentation/​couchbase/​couchbase-3.0/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​couchbase/​v3_0/​CouchbaseRequestTracer.java Unifies trace and log schemas.
instrumentation/​camel-2.20/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​camel/​v2_20/​CamelSingletons.java Uses domain schema owners.
instrumentation/​camel-2.20/​javaagent/​src/​main/​java/​io/​opentelemetry/​javaagent/​instrumentation/​camel/​v2_20/​CamelProcessMetrics.java Uses messaging schema owner.
instrumentation/​aws-sdk/​aws-sdk-2.2/​library/​src/​main/​java/​io/​opentelemetry/​instrumentation/​awssdk/​v2_2/​internal/​AwsSdkInstrumenterFactory.java Uses domain schema owners.
instrumentation/​aws-sdk/​aws-sdk-1.11/​library/​src/​main/​java/​io/​opentelemetry/​instrumentation/​awssdk/​v1_11/​internal/​AwsSdkInstrumenterFactory.java Uses domain schema owners.
instrumentation-api/​src/​test/​java/​io/​opentelemetry/​instrumentation/​api/​internal/​SemconvStabilityTest.java Removes assertions for removed helpers.
instrumentation-api/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​internal/​SemconvStability.java Removes domain schema helpers.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​rpc/​RpcCommonAttributesExtractor.java Delegates schema lookup to selection.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​rpc/​internal/​RpcSemconvSelection.java Owns selection-dependent schema lookup.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​messaging/​MessagingAttributesExtractor.java Uses messaging schema owner.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​messaging/​internal/​MessagingSchemaUrls.java Defines messaging schema constant.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​db/​SqlClientAttributesExtractor.java Uses database schema owner.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​db/​internal/​DbSchemaUrls.java Defines database schema constant.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​db/​DbConnectionPoolMetrics.java Uses database schema owner.
instrumentation-api-incubator/​src/​main/​java/​io/​opentelemetry/​instrumentation/​api/​incubator/​semconv/​db/​DbClientAttributesExtractor.java Uses database schema owner.

Review effort: Balanced

Copilot AI requested a review from trask October 20, 2026 18:18
@trask
trask marked this pull request as ready for review October 20, 2026 18:26
@trask
trask requested a review from a team as a code owner October 20, 2026 18:26
@opentelemetry-pr-dashboard
opentelemetry-pr-dashboard Bot requested a balanced review from Copilot October 20, 2026 18:27

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The refactor preserves schema values and selection behavior, with no blocking issues identified.

No open issues 🎉

Review effort: Balanced

Copilot AI and others added 2 commits October 20, 2026 14:26
Co-authored-by: trask <218610+trask@users.noreply.github.com>
Copilot AI and others added 3 commits October 20, 2026 14:27
Co-authored-by: trask <218610+trask@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: trask <218610+trask@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The refactor preserves schema values and selection behavior, with no blocking issues identified.

1 open issue

Review effort: Balanced

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The internal refactor preserves schema values and selection behavior, with no unresolved blocking findings.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

*/
public final class DbSchemaUrls {

public static final String SCHEMA_URL = SchemaUrls.V1_44_0;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wondering whey we have a separate class for each semconv. Under what circumstances would we add additional constants here?

@laurit
laurit merged commit 0a253ea into main Oct 21, 2026
127 of 129 checks passed
@laurit
laurit deleted the copilot/cleanup-schema-url-ownership branch October 21, 2026 06:25
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.

Revisit all the copies of SchemaUrls.V1_44_0

4 participants