OpenTelemetry - CNCF/opentelemetry-cpp: Release v1.13.0

Name: opentelemetry-cpp

Owner: OpenTelemetry - CNCF

Release: v1.13.0 release

Released: 2023-12-06

License: Apache-2.0

Release Assets:

v1.13.0 release

Release of core packages

  • opentelemetry-api
  • opentelemetry-sdk

and exporter packages:

  • opentelemetry-exporter-otlp (gRPC + HTTP/JSON)
  • opentelemetry-exporter-prometheus

What's Changed

Important changes

  • [API] Add InstrumentationScope attributes in TracerProvider::GetTracer() #2371

    • TracerProvider::GetTracer() now accepts InstrumentationScope attributes.
    • Because this is an ABI breaking change, the fix is only available with the CMake option WITH_ABI_VERSION_2=ON.
    • When building with CMake option WITH_ABI_VERSION_1=ON (by default) the ABI is unchanged, and the fix is not available.
  • [API] Add a new AddLink() operation to Span #2380

    • New API Span::AddLink() adds a single link to a span.
    • New API Span::AddLinks() adds multiple links to a span.
    • Because this is an ABI breaking change, the fix is only available with the CMake option WITH_ABI_VERSION_2=ON.
    • When building with CMake option WITH_ABI_VERSION_1=ON (by default) the ABI is unchanged, and the fix is not available.
  • [BUILD] Make WITH_OTLP_HTTP_SSL_PREVIEW mainstream #2378

    • The experimental CMake option WITH_OTLP_HTTP_SSL_PREVIEW is now promoted to stable. The default is changed to ON.
    • The experimental CMake option WITH_OTLP_HTTP_SSL_TLS_PREVIEW is now promoted to stable. The default is changed to ON.
    • These build options are scheduled to be removed by the next release, building without SSL/TLS will no longer be possible.
  • [EXPORTER] Rework OTLP/HTTP and OTLP/GRPC exporter options #2388

    • OtlpGrpcMetricExporterOptions used to honor _TRACES_ environment variables, instead of _METRICS_ environment variables.
    • The implementation of OtlpGrpcMetricExporterOptions is now fixed.
    • Please check configuration variables, to make sure _METRICS_ variables are set as expected.

Breaking changes

  • [BUILD] Remove WITH_REMOVE_METER_PREVIEW, use WITH_ABI_VERSION_2 instead #2370

    • The experimental CMake option WITH_REMOVE_METER_PREVIEW is removed, use option WITH_ABI_VERSION_2 instead.
  • [BUILD] enum CanonicalCode names too generic... conflict with old C defines #2385

    • Header file opentelemetry/trace/canonical_code.h is unused, and is now removed.
    • This header should not be included directly in an application. If this is the case, please remove any remaining include directives.
  • [BUILD] Fix exported definitions when building DLL with STL #2387

    • The MeterSelector, MeterSelectorFactory, InstrumentSelector, and InstrumentSelectorFactory APIs now use const std::string& instead of nostd::string_view for name, version and schema to maintain a single export definition for DLL.
  • [EXPORTER] Rework OTLP/HTTP and OTLP/GRPC exporter options #2388

    • OtlpGrpcLogRecordExporter incorrectly used OtlpGrpcExporterOptions, which are options for traces and not logs.
    • This created a bug: the OtlpGrpcLogRecordExporter honors _TRACES_ environment variables, instead of _LOGS_ environment variables.
    • OtlpGrpcLogRecordExporter is changed to use OtlpGrpcLogRecordExporterOptions instead, fixing the bug.
    • User code that initializes the SDK with a GRPC Log exporter, and uses exporter options, should adjust to replace OtlpGrpcExporterOptions with OtlpGrpcLogRecordExporterOptions.
    • Please check configuration variables, to make sure _LOGS_ variables are set as expected.
  • [REMOVAL] Remove ZPAGES #2433

    • As announced in release 1.12.0, the deprecated ZPAGES exporter is now removed.

New Contributors

Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.12.0...v1.13.0

To top