diff --git a/pom.xml b/pom.xml index f2db2e54..ba167ef8 100644 --- a/pom.xml +++ b/pom.xml @@ -32,6 +32,7 @@ 2022 1.32.0 + 1.24.0 3.0.1 3.1 4.2.0 @@ -86,6 +87,7 @@ ${opentelemetry.java.version} + ${opentelemetry.semconv.version} diff --git a/spec/src/main/asciidoc/microprofile-telemetry-spec.asciidoc b/spec/src/main/asciidoc/microprofile-telemetry-spec.asciidoc index 1e5237bc..929c454e 100644 --- a/spec/src/main/asciidoc/microprofile-telemetry-spec.asciidoc +++ b/spec/src/main/asciidoc/microprofile-telemetry-spec.asciidoc @@ -33,7 +33,7 @@ ifdef::backend-pdf[] endif::[] // Attributes defined in the microprofile-telemetry (parent) maven POM: //:otel-java-version: - +//:otel-semconv-version: // == License :sectnums!: diff --git a/spec/src/main/asciidoc/opentelemetry-apis.adoc b/spec/src/main/asciidoc/opentelemetry-apis.adoc index 412cf327..d9de2f9a 100644 --- a/spec/src/main/asciidoc/opentelemetry-apis.adoc +++ b/spec/src/main/asciidoc/opentelemetry-apis.adoc @@ -77,14 +77,4 @@ The above packages have dependencies on the following packages which MUST be sup === Tracing Annotations -* https://www.javadoc.io/doc/io.opentelemetry.instrumentation/opentelemetry-instrumentation-annotations/latest/io/opentelemetry/instrumentation/annotations/package-summary.html[io.opentelemetry.instrumentation.annotations] (`WithSpan` and `SpanAttribute` only) - -=== Semantic Conventions Attributes - -[NOTE] -==== -These packages are not stable and MAY be subject to breaking changes in future releases. -==== - -* https://www.javadoc.io/static/io.opentelemetry/opentelemetry-semconv/{otel-java-version}-alpha/io/opentelemetry/semconv/trace/attributes/package-summary.html[io.opentelemetry.semconv] -* https://www.javadoc.io/static/io.opentelemetry/opentelemetry-semconv/{otel-java-version}-alpha/io/opentelemetry/semconv/resource/attributes/package-summary.html[io.opentelemetry.semconv.resource.attributes] \ No newline at end of file +* https://www.javadoc.io/doc/io.opentelemetry.instrumentation/opentelemetry-instrumentation-annotations/latest/io/opentelemetry/instrumentation/annotations/package-summary.html[io.opentelemetry.instrumentation.annotations] (`WithSpan` and `SpanAttribute` only) \ No newline at end of file diff --git a/spec/src/main/asciidoc/tracing.adoc b/spec/src/main/asciidoc/tracing.adoc index 9e721bad..64735dc8 100644 --- a/spec/src/main/asciidoc/tracing.adoc +++ b/spec/src/main/asciidoc/tracing.adoc @@ -170,11 +170,16 @@ Calling the OpenTelemetry API directly MUST work in the same way and yield the s [[sec:semantic-conventions]] === Trace Semantic Conventions -The https://github.com/open-telemetry/opentelemetry-java/tree/v{otel-java-version}/semconv/src/main/java/io/opentelemetry/semconv[Trace Semantic Conventions] for Spans and Attributes MUST be followed by any compatible implementation. +The https://github.com/open-telemetry/semantic-conventions/blob/v{otel-semconv-version}/docs/http/http-spans.md[Semantic Conventions for HTTP Spans] MUST be followed by any compatible implementation. -All attributes marked as `required` MUST be present in the context of the Span where they are defined. +NOTE: This is a breaking change from MicroProfile Telemetry 1.1 due to stabilization of HTTP semantic conventions in OpenTelemetry. +Changes to attributes are described in https://github.com/open-telemetry/semantic-conventions/blob/main/docs/http/migration-guide.md[HTTP semantic convention stability migration guide]. +// Migration guide was not part of 1.24.0 release, so the link is to the main branch. + +Semantic Conventions distinguish several https://github.com/open-telemetry/semantic-conventions/blob/v{otel-semconv-version}/docs/general/attribute-requirement-level.md[Requirement Levels] for attributes. +All Span attributes marked as `Required` and `Conditionally Required` MUST be present in the context of the Span where they are defined. Any other attribute is optional. -Implementations can also add their own attributes. +Implementations MAY also add their own attributes, or provide means of configuring `Opt-In` attribute emission. ==== MicroProfile Attributes Other MicroProfile specifications can add their own attributes under their own attribute name following the convention `mp.[specification short name].[attribute name]`.