Skip to content

Releases: open-telemetry/opentelemetry-specification

Release v1.23.0

12 Jul 19:09
8ae0f6f
Compare
Choose a tag to compare

v1.23.0 (2023-07-12)

Context

  • No changes.

Traces

  • Refine SDK TracerProvider configuration section.
    (#3559)
  • Make SDK Tracer Creation more normative.
    (#3529)

Metrics

  • Refine SDK MeterProvider configuration section.
    (#3522)
  • Clarify metric view requirements and recommendations.
    (#3524)
  • Change the view name to be the view's stream configuration name.
    (#3524)
  • Make SDK Meter Creation more normative.
    (#3529)
  • Clarify duplicate instrument registration scope to be a MeterProvider.
    (#3538)
  • Clarify identical instrument definition for SDK.
    (#3585)

Logs

  • Refine SDK LoggerProvider configuration section.
    (#3559)
  • Make SDK Logger Creation more normative.
    (#3529)

Resource

  • No changes.

Compatibility

  • NOTICE: Remove the Jaeger Exporter
    (#3567)
  • Prometheus: Do not add _total suffix if the metric already ends in _total.
    (#3581)
  • Prometheus type and unit suffixes are not trimmed by default.
    (#3580)

SDK Configuration

  • Extract Exemplar section and mark it as Experimental.
    (#3533)

Common

  • No changes.

Supplemenatary Guidelines

  • No changes.

New Contributors

Release v1.22.0

09 Jun 12:31
f09624b
Compare
Choose a tag to compare

Release v1.22.0 (2023-06-09)

Context

  • No changes.

Traces

  • No changes.

Metrics

  • Make recommendation to reserve aggregator normative.
    (#3526)

Logs

  • No changes.

Resource

  • No changes.

Compatibility

  • No changes.

OpenTelemetry Protocol

  • Move OTLP specification to github.com/open-telemetry/opentelemetry-proto.
    (#3454)

SDK Configuration

  • Extract Examplar section and mark it as Experimental.
    (#3533)

Telemetry Schemas

  • No changes.

Common

  • Explain why custom attributes are not recommended to be placed in OTel
    namespaces.
    (#3507)

Supplementary Guidelines

  • No changes.

New Contributors

Release v1.21.0

16 May 22:34
4229197
Compare
Choose a tag to compare

v1.21.0 (2023-05-17)

Context

  • No changes.

Traces

  • No changes.

Metrics

  • Add experimental histogram advice API.
    (#3216)
  • Recommended non-prefixed units for metric instrument semantic conventions.
    (#3312)
  • Recommended cardinality limits to protect metrics pipelines against
    excessive data production from a single instrument.
    (#2960)
  • Add links to the JMX APIs that are the JVM runtime metric sources.
    (#3463)

Logs

  • Clarify parameters for emitting a log record.
    (#3345)
  • Drop logger include_trace_context parameter.
    (#3397)
  • Clarify how ObservedTimestamp field is set if unspecified
    (#3385)
  • Mark logs bridge API / SDK as stable.
    (#3376)
  • Mark LogRecord Environment Variables as stable.
    (#3449)

Resource

  • No changes.

Semantic Conventions

Compatibility

  • Mark OpenCensus compatibility spec as stable
    (#3425)

OpenTelemetry Protocol

  • No changes.

SDK Configuration

  • Lay initial groundwork for file configuration
    (#3360)
  • Move file configuration schema to opentelemetry-configuration.
    (#3412)
  • Move sdk-configuration.md and sdk-environment-variables.md
    to /specification/configuration/.
    (#3434)

Telemetry Schemas

  • No changes.

Common

  • Add log entries to specification README.md contents.
    (#3435)

Supplementary Guidelines

  • Add guidance to use service-supported propagation formats as default for AWS SDK client calls.
    (#3212)

New Contributors

Full Changelog: v1.20.0...v1.21.0

Release v1.20.0

07 Apr 21:21
855d80c
Compare
Choose a tag to compare

v1.20.0 (2023-04-07)

Context

  • No changes.

Traces

  • Clarify required parent information in ReadableSpan. Technically a relaxation,
    but previously it was easy to overlook certain properties were required.
    (#3257)
  • Remove underspecified and unused Span decorator from Trace SDK.
    (#3363)

Metrics

  • Clarify that units should use UCUM case sensitive variant.
    (#3306)
  • Remove No-Op instrument and Meter creation requirements.
    (#3322)

Logs

  • Update log readme "request context" to "trace context".
    (#3332)
  • Remove log readme document status.
    (#3334)
  • Break out compatibility document on recording trace context in non-OTLP Log Format
    (#3331)
  • Ensure Logs Bridge API doesn't contain SDK implementation details
    (#3275)
  • Add Log Bridge API artifact naming guidance
    (#3346)
  • Add log appender / bridge to glossary.
    (#3335)

Resource

  • No changes.

Semantic Conventions

  • Clarify that attribute requirement levels apply to the instrumentation library
    (#3289)
  • Fix grammatical number of metric units.
    (#3298)
  • Rename net.app.protocol.(name|version) to net.protocol.(name|version)
    (#3272)
  • Replace http.flavor with net.protocol.(name|version)
    (#3272)
  • Metric requirement levels are now stable
    (#3271)
  • BREAKING: remove messaging.destination.kind and messaging.source.kind.
    (#3214,
    #3348)
  • Define attributes collected for cosmosdb by Cosmos DB SDK
    (#3097)
  • Clarify stability requirements of semantic conventions
    (#3225)
  • BREAKING: Change span statuses for gRPC server spans.
    (#3333)
  • Stabilize key components of service.* and telemetry.sdk.* resource
    semantic conventions.
    (#3202)
  • Fixed attributes requirement level in semantic conventions for hardware metrics
    (#3258)
  • Added AWS S3 semantic conventions.
    (#3251)
  • Fix units in the Kafka metric semantic conventions.
    (#3300)
  • Add Trino to Database specific conventions
    (#3347)
  • Change db.statement to only be collected if there is sanitization.
    (#3127)
  • BREAKING: Remove http.status_code attribute from the
    http.server.active_requests metric.
    (#3366)
  • Mark attribute requirement levels as stable
    (#3368)

Compatibility

  • No changes.

OpenTelemetry Protocol

  • Declare OTLP stable.
    (#3274)

SDK Configuration

  • No changes.

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Release v1.19.0

06 Mar 19:34
9146312
Compare
Choose a tag to compare

v1.19.0 (2023-03-06)

Context

  • No changes.

Traces

  • No changes.

Metrics

  • Add unit to View's Instrument selection criteria.
    (#3184)
  • Add metric requirement levels "Required", "Recommended", and "Opt-In".
    (#3237)

Logs

  • Rename Logs API to Logs Bridge API to prevent confusion.
    (#3197)
  • Move event language from log README to event-api.
    (#3252)

Resource

  • Clarify how to collect host.id for non-containerized systems.
    (#3173)

Semantic Conventions

  • Move X-Ray Env Variable propagation to span link instead of parent for AWS Lambda.
    (#3166)
  • Add heroku resource semantic conventions.
    #3075
  • BREAKING: Rename faas.execution to faas.invocation_id
    (#3209)
  • BREAKING: Change faas.max_memory units to Bytes instead of MB
    (#3209)
  • BREAKING: Expand scope of faas.id to cloud.resource_id
    (#3188)
  • Add Connect RPC specific conventions
    (#3116)
  • Rename JVM metric attribute value from nonheap to non_heap
    (#3250)
  • Mark the attribute naming guidelines in the specification as stable.
    (#3220)
  • Mark telemetry schema readme stable.
    (#3221)
  • Remove mention of net.transport from HTTP semantic conventions
    (#3244)
  • Clarifies that if an HTTP client request is explicitly made to an IP address, e.g. http://x.x.x.x:8080, then net.peer.name SHOULD be the IP address x.x.x.x
    (#3276)
  • Mark net.sock.host.port as conditionally required.
    (#3246)
  • Rename Optional attribute requirement level to Opt-In.
    (#3228)
  • Rename http.user_agent to user_agent.original.
    (#3190)
  • Expand the declaration of pool.name.
    (#3050)

Compatibility

  • Update Zipkin remoteEndpoint preferences.
    (#3087)

OpenTelemetry Protocol

  • Declare OTLP/JSON Stable.
    (#2930)

SDK Configuration

  • No changes.

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Release v1.18.0

09 Feb 14:53
84a5fa3
Compare
Choose a tag to compare

v1.18.0 (2023-02-09)

Context

  • No changes.

Traces

  • Clarify guidance regarding excessive logging when attributes are dropped or truncated.
    (#3151)

Metrics

  • No changes.

Logs

  • Define BatchLogRecordProcessor default configuration values.
    (#3002)
  • Clarify guidance regarding excessive logging when attributes are dropped or truncated.
    (#3151)

Resource

  • No changes.

Semantic Conventions

  • Add Cloud Spanner and Microsoft SQL Server Compact to db.system semantic conventions
    (#3105).
  • Enable semantic convention tooling for metrics in spec
    (#3119)
  • Rename google openshift platform attribute from google_cloud_openshift to gcp_openshift
    to match the existing cloud.provider prefix.
    (#3095)
  • Changes http server span names from {http.route} to {http.method} {http.route}
    (when route is available), and from HTTP {http.method} to {http.method} (when
    route is not available).
    Changes http client span names from HTTP {http.method} to {http.method}.
    (#3165)
  • Mark http.server.duration and http.client.duration metrics as required, and mark
    all other HTTP metrics as optional.
    #3158
  • Add net.host.port to http.server.active_requests metrics attributes.
    #3158
  • http.route SHOULD contain the "application root" if there is one.
    (#3164)

Compatibility

  • Add condition with sum and count for Prometheus summaries
    (3059).
  • Clarify prometheus unit conversions
    (#3066).
  • Define conversion mapping from OTel Exponential Histograms to Prometheus Native
    Histograms.
    (#3079)
  • Fix Prometheus histogram metric suffixes. Bucket series end in _bucket
    (#3018).

OpenTelemetry Protocol

  • No changes.

SDK Configuration

  • Add log-specific attribute limit configuration and clarify that general
    attribute limit configuration also apply to log records
    (#2861).

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Release v1.17.0

17 Jan 21:58
025f8fc
Compare
Choose a tag to compare

v1.17.0 (2023-01-17)

Context

  • No changes.

Traces

  • Clarify that the BatchSpanProcessor should export batches when the queue reaches the batch size
    (#3024)
  • Deprecate jaeger exporter, scheduled for spec removal in July 2023.
    #2858

Metrics

  • Rename built-in ExemplarFilters to AlwaysOn, AlwaysOff and TraceBased.
    (#2919)
  • Add MaxScale config option to Exponential Bucket Histogram Aggregation.
    (#3017)
  • Rename exponential bucket histogram aggregation to base 2 exponential histogram
    aggregation. Rename OTEL_EXPORTER_OTLP_METRICS_DEFAULT_HISTOGRAM_AGGREGATION
    value from exponential_bucket_histogram to
    base2_exponential_bucket_histogram.
    Mark exponential histogram data model and base2 exponential histogram aggregation as stable.
    (#3041)

Logs

  • Clarify usage of log body for structured logs
    (#3023)

Resource

  • No changes.

Semantic Conventions

  • Clarify common HTTP attributes apply to both clients and servers
    (#3044)
  • Add code.lineno source code attribute
    (#3029)
  • Add ClickHouse to db.system semantic conventions
    (#3011)
  • Refactor messaging attributes and per-message attributes in batching scenarios.
    (#2957).
    BREAKING: rename messaging.consumer_id to messaging.consumer.id,
    messaging.destination to messaging.destination.name,
    messaging.temp_destination to messaging.destination.temporary,
    messaging.destination_kind to messaging.destination.kind,
    messaging.message_id to messaging.message.id,
    messaging.protocol to net.app.protocol.name,
    messaging.protocol_version, net.app.protocol.version,
    messaging.conversation_id to messaging.message.conversation_id,
    messaging.message_payload_size_bytes to messaging.message.payload_size_bytes,
    messaging.message_payload_compressed_size_bytes to messaging.message.payload_compressed_size_bytes,
    messaging.rabbitmq.routing_key: messaging.rabbitmq.destination.routing_key,
    messaging.kafka.message_key to messaging.kafka.message.key,
    messaging.kafka.consumer_group to messaging.kafka.consumer.group,
    messaging.kafka.partition to messaging.kafka.destination.partition,
    messaging.kafka.tombstone to messaging.kafka.message.tombstone,
    messaging.rocketmq.message_type to messaging.rocketmq.message.type,
    messaging.rocketmq.message_tag to messaging.rocketmq.message.tag,
    messaging.rocketmq.message_keys to messaging.rocketmq.message.keys;
    Removed messaging.url;
    Renamed send operation to publish;
    Split destination and source namespaces and clarify per-message attributes in batching scenarios.

Compatibility

  • Add Tracer.Close() to the OpenTracing Shim layer (#3048).
  • Add OpenCensus migration guide and add BinaryPropagation as an option to gRPC
    instrumentation for OpenCensus compatibility
    (#3015).

OpenTelemetry Protocol

  • Add table for OTLP/HTTP response code and client retry recommendation
    (#3028)
  • Remove spaces from example exporter User-Agent header to conform to RFC7231 & RFC7230.
    (#3052)

SDK Configuration

  • Rename knowns values for OTEL_METRICS_EXEMPLAR_FILTER to always_on,
    always_off and trace_based.
    (#2919)

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Full Changelog: v1.16.0...v1.17.0

Release v1.16.0

08 Dec 16:36
791f463
Compare
Choose a tag to compare

v1.16.0 (2022-12-08)

Context

  • No changes.

Traces

  • No changes.

Metrics

  • Define Experimental MetricProducer as a third-party provider of metric data to MetricReaders.
    (#2951)
  • Add OTLP exporter temporality preference named "LowMemory" which
    configures Synchronous Counter and Histogram instruments to use
    Delta aggregation temporality, which allows them to shed memory
    following a cardinality explosion, thus use less memory.
    (#2961)

Logs

  • Clarification on what an Event is, and what the event.domain and event.name attributes represent
    (#2848)
  • Move event.domain from InstrumentationScope attributes to LogRecord
    attributes.
    (#2940)
  • Split out Event API from Log API
    (#2941)
  • Clarify data modification in LogRecordProcessor.
    (#2969)
  • Make sure it is very clear we are not building a Logging API.
    (#2966)

Resource

  • Extend Cloud Platform Enum with OpenShift entry for all supported cloud providers.
    (#2985)

Semantic Conventions

  • Add process.runtime.jvm.gc.duration metric to semantic conventions.
    (#2903)
  • Make http.status_code metric attribute an int.
    (#2943)
  • Add IBM Cloud as a cloud provider.
    (#2965)
  • Add semantic conventions for Feature Flags
    (#2529)
  • Rename rpc.request.metadata.<key> and rpc.response.metadata.<key> to
    rpc.grpc.request.metadata.<key> and rpc.grpc.response.metadata.<key>
    (#2981)
  • List the machine-id as potential source for a unique host.id
    (#2978)
  • Add messaging.kafka.message.offset attribute.
    (#2982)
  • Update hardware metrics to use direction as per general semantic conventions
    (#2942)

Compatibility

  • Add OpenCensus metric bridge specification.
    (#2979)

OpenTelemetry Protocol

  • No changes.

SDK Configuration

  • Specify handling of invalid numeric environment variables
    (#2963)

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Full Changelog: v1.15.0...v1.16.0

Release v1.15.0

09 Nov 15:36
8b40ae1
Compare
Choose a tag to compare

v1.15.0 (2022-11-09)

Context

  • No changes.

Traces

  • Rename http.retry_count to http.resend_count and clarify its meaning.
    (#2743)

Metrics

  • Handle duplicate description comments during Prometheus conversion.
    (#2890)
  • Allow to configure min/max recording in the exponential histogram aggregation.
    (#2904)
  • Add table of instrument additive property
    (#2906)

Logs

  • Add Context as argument to LogRecordProcessor#onEmit.
    (#2927)

Resource

  • No changes.

Semantic Conventions

  • Change to messaging.kafka.max.lag from UpDownCounter to Gauge (and rename it)
    (#2837)
  • Add daemon attribute to jvm threads metric
    (#2828)
  • Add gRPC request and response metadata semantic conventions
    (#2874)
  • Add process.paging.faults metric to semantic conventions
    (#2827)
  • Define semantic conventions yaml for non-otlp conventions
    (#2850)
  • Add more semantic convetion attributes of Apache RocketMQ
    (#2881)
  • Add process.runtime.jvm.memory.usage_after_last_gc metric to semantic conventions.
    (#2901)

Compatibility

  • Specify how Prometheus exporters and receivers handle instrumentation scope.
    (#2703).

OpenTelemetry Protocol

  • Clarify that lowerCamelCase field names MUST be used for OTLP/JSON
    (#2829)

SDK Configuration

  • No changes.

Telemetry Schemas

  • No changes.

Common

  • Clarify that Scope is defined at build time
    (#2878)

New Contributors

Full Changelog: v1.14.0...v1.15.0

Release v1.14.0

04 Oct 21:36
8c73c16
Compare
Choose a tag to compare

v1.14.0 (2022-10-04)

Context

  • No changes.

Traces

  • No changes.

Metrics

  • Changed the default buckets for Explicit Bucket Histogram to better match the official Prometheus clients.
    (#2770).
  • Fix OpenMetrics valid label keys, and specify prometheus conversion for metric name.
    (#2788)

Logs

  • Add environment variables for configuring the BatchLogRecordProcessor.
    (#2785)

Resource

  • Add browser.mobile and browser.language resource attributes
    (#2761)

Semantic Conventions

  • Add process.context_switches, and process.open_file_descriptors, to the metrics semantic conventions
    (#2706)
  • Add exceptions to the logs semantic conventions
    (#2819)
  • Make context propagation requirements explicit for messaging semantic conventions
    (#2750).
  • Update http metrics to use http.route instead of http.target for servers, drop http.url for clients
    (#2818).

Compatibility

  • No changes.

OpenTelemetry Protocol

  • Add user agent to OTLP exporter specification
    (#2684)
  • Prohibit usage of enum value name strings in OTLP/JSON
    (#2758)
  • Clarify that unknown fields must be ignored when receiving OTLP/JSON
    (#2816)
  • Add OTLP exporter user agent to the spec compliance matrix
    (#2842).

SDK Configuration

  • Add the OTEL_SDK_DISABLED environment variable to the SDK configuration.
    (2679)
  • Add the definition of a Boolean environment variable
    (#2755).

Telemetry Schemas

  • No changes.

Common

  • No changes.

New Contributors

Full Changelog: v1.13.0...v1.14.0