Update dependency open-telemetry/opentelemetry-cpp to v1.18.0
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
open-telemetry/opentelemetry-cpp | ironbank-github | minor |
v1.11.0 -> v1.18.0
|
⚠ WarningSome dependencies could not be looked up. Check the warning logs for more information.
Release Notes
open-telemetry/opentelemetry-cpp (open-telemetry/opentelemetry-cpp)
v1.18.0
: release
v1.18.0 release
Release of:
- opentelemetry-api
- opentelemetry-sdk
- exporter packages
What's Changed
- [EXPORTER] Fix crash in ElasticsearchLogRecordExporter by @ShadowMaxLeb in https://github.com/open-telemetry/opentelemetry-cpp/pull/3082
- [BUILD] Avoid buggy warning with gcc <= 8 by @Romain-Geissler-1A in https://github.com/open-telemetry/opentelemetry-cpp/pull/3087
- [API] Jaeger Propagator should not be deprecated by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3086
- Update bzlmod version by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3093
- [BUILD] Remove
std::make_unique
by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3098 - [BUILD] Fix compiling problems for gcc 4.8 by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3100
- [TEST] Fix linking order and gmock linking by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3106
- [EXPORTER] Add config options to prometheus exporter by @psx95 in https://github.com/open-telemetry/opentelemetry-cpp/pull/3104
- [BUILD] Add a CMake option to disable shared libs by @tobim in https://github.com/open-telemetry/opentelemetry-cpp/pull/3095
- [EXPORTER] Remove out of date ETW exporter doc by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/3103
- [EXPORTER] Add logging for async gRPC errors by @santigimeno in https://github.com/open-telemetry/opentelemetry-cpp/pull/3108
- [BUILD] Remove aligned_storage from nostd by @ColoredCarrot in https://github.com/open-telemetry/opentelemetry-cpp/pull/3112
- [EXPORTER] Elastic Search exporter follow ECS guidelines by @ShadowMaxLeb in https://github.com/open-telemetry/opentelemetry-cpp/pull/3107
- [INSTALL] Resolve dependencies in opentelemetry-cpp-config.cmake by @tobim in https://github.com/open-telemetry/opentelemetry-cpp/pull/3094
- [API] Add synchronous gauge by @uuzay in https://github.com/open-telemetry/opentelemetry-cpp/pull/3029
- [BUILD] allow building with -DWITH_OTLP_HTTP_COMPRESSION=OFF without zlib by @cfstras in https://github.com/open-telemetry/opentelemetry-cpp/pull/3120
- [CI] Comment the arm64 CI by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3125
- [API] Comply with W3C Trace Context by @psx95 in https://github.com/open-telemetry/opentelemetry-cpp/pull/3115
- [EXPORTER] bump prometheus to v1.3.0 by @esigo in https://github.com/open-telemetry/opentelemetry-cpp/pull/3122
- [EXPORTER] Log SSL Connection Information by @chusitoo in https://github.com/open-telemetry/opentelemetry-cpp/pull/3113
- [BUILD] Improve how to handle yield() in ARM. by @santiagorr in https://github.com/open-telemetry/opentelemetry-cpp/pull/3129
- [BUILD] Fix -Wmissing-template-arg-list-after-template-kw warning by @yashykt in https://github.com/open-telemetry/opentelemetry-cpp/pull/3133
- [EXPORTER]: Elasticsearch exporter put log resource in root instead of under 'resources' by @ShadowMaxLeb in https://github.com/open-telemetry/opentelemetry-cpp/pull/3131
- [TEST] Rename w3c_tracecontext_test to w3c_tracecontext_http_test_server by @psx95 in https://github.com/open-telemetry/opentelemetry-cpp/pull/3132
- [BUILD] Patches for building on AIX by @tjcw in https://github.com/open-telemetry/opentelemetry-cpp/pull/3127
- [SEMANTIC CONVENTIONS] Migration to weaver by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3105
- [SEMANTIC CONVENTIONS] Upgrade to semantic conventions 1.28.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3139
- [EXPORTER] handling of invalid ports in UrlParser by @sjinks in https://github.com/open-telemetry/opentelemetry-cpp/pull/3142
- [CI] speed up
clang-tidy
workflow by @sjinks in https://github.com/open-telemetry/opentelemetry-cpp/pull/3148 - [EXPORTER] Allow to share gRPC clients between OTLP exporters by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3041
- Bump codecov/codecov-action from 4 to 5 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/3143
- [CI] Add cppcheck in the build by @chusitoo in https://github.com/open-telemetry/opentelemetry-cpp/pull/3151
- [BUILD] Fix error message by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/3152
- [EXPORTER] fix clang-tidy warnings in UrlParser by @sjinks in https://github.com/open-telemetry/opentelemetry-cpp/pull/3146
- [EXPORTER] Upgrade to opentelemetry-proto 1.4.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3157
- [TEST] refactor UrlParser tests to use value-paramterized tests by @sjinks in https://github.com/open-telemetry/opentelemetry-cpp/pull/3153
- [TEST] add a test for ElasticSearchRecordable by @sjinks in https://github.com/open-telemetry/opentelemetry-cpp/pull/3154
- [BUILD] Fix missing dependency on protoc compiler by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3159
- [bazel] Update prometheus-cpp in MODULE.bazel by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/3162
- [bazel] Enable --incompatible_disallow_empty_glob by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2642
- [INSTALL] Fix cmake/opentelemetry-cpp-config.cmake.in by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3165
- [BUILD] Do not set OTELCPP_PROTO_PATH in the CMake cache by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3160
- [BUILD] Fix build for esp32 by @albkharisov in https://github.com/open-telemetry/opentelemetry-cpp/pull/3155
- [bazel] Update opentelemetry-proto in MODULE.bazel by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/3163
- [RELEASE] Release opentelemetry-cpp 1.18.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3168
Important changes
-
[API] Jaeger Propagator should not be deprecated #3086
- Deprecation of the Jaeger propagator, as announced on 2023-01-31 in version 1.8.2, is now reverted.
- This deprecation turned out to be not justified, as the Jaeger propagator can be used without the (now removed) Jaeger exporter.
-
[EXPORTER] Change log resources location for ElasticsearchLogRecordExporter #3119
- Moved from
root/resources
toroot
- Moved from
-
[SEMANTIC CONVENTIONS] Migration to weaver #3105
-
semantic_convention.h
header files are deprecated, replaced bysemconv/xxx_attributes.h
header files, for eachxxx
semantic attribute group. - See file DEPRECATED.md for details.
-
Deprecations
- This release contains deprecations, see file DEPRECATED.md for details.
New Contributors
- @Romain-Geissler-1A made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3087
- @psx95 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3104
- @tobim made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3095
- @santigimeno made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3108
- @ColoredCarrot made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3112
- @uuzay made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3029
- @cfstras made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3120
- @santiagorr made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3129
- @yashykt made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3133
- @tjcw made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3127
- @sjinks made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3142
- @albkharisov made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3155
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.17.0...v1.18.0
v1.17.0
: release
v1.17.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
- [CI] Add a clang-tidy build by @msiddhu in https://github.com/open-telemetry/opentelemetry-cpp/pull/3001
- [BUILD] Upgrade to opentelemetry-proto 1.3.2 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2991
- [REMOVAL] Remove build option
WITH_DEPRECATED_SDK_FACTORY
by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2717 - [EXPORTER] ForceFlush before canceling the running requests on shutdown. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2727
- [SDK] Fix crash in
PeriodicExportingMetricReader
. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2983 - [SDK] Fix memory leak in TlsRandomNumberGenerator() constructor by @hongweipeng in https://github.com/open-telemetry/opentelemetry-cpp/pull/2661
- [EXPORTER] Ignore exception when create thread in OTLP file exporter. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3012
- [BUILD] Update the version in MODULE.bazel by @BYVoid in https://github.com/open-telemetry/opentelemetry-cpp/pull/3015
- [BUILD] Fix build without vcpkg on Windows when gRPC is disabled by @Corristo in https://github.com/open-telemetry/opentelemetry-cpp/pull/3016
- [BUILD] Add abi_version_no bazel flag. by @BYVoid in https://github.com/open-telemetry/opentelemetry-cpp/pull/3020
- [Code health] Expand iwyu coverage to include unit tests. by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3022
- [BUILD] Version opentelemetry_proto/proto_grpc shared libraries by @Troels51 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2992
- [SEMANTIC CONVENTIONS] Upgrade semantic conventions to 1.27.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3023
- [SDK] Support empty histogram buckets by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/3027
- [TEST] Fix sync problems in OTLP File exporter tests. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3031
- [SDK] PeriodicExportingMetricReader: future is never set, blocks until timeout by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3030
- [Code Health] Clang Tidy cleanup, Part 2 by @msiddhu in https://github.com/open-telemetry/opentelemetry-cpp/pull/3038
- [Code Health] include-what-you-use cleanup, part 3 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3004
- [SDK] Fix overflow in timeout logic by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/3046
- [TEST] Add missing tests to Bazel build by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/3045
- [TEST] update collector tests with debug exporter by @codeboten in https://github.com/open-telemetry/opentelemetry-cpp/pull/3050
- [EXAMPLE] update collector example with debug exporter by @codeboten in https://github.com/open-telemetry/opentelemetry-cpp/pull/3049
- [TEST] update references to logging exporter by @codeboten in https://github.com/open-telemetry/opentelemetry-cpp/pull/3053
- [EXAMPLE] Clean the tracer initialization in OStream example by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/3051
- [EXPORTER] Fix the format of SpanLink for ETW by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/3054
- [EXPORTER] Implement in-memory metric exporter by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/3043
- [Code Health] include-what-you-use cleanup, part 4 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3040
- [BUILD] add loongarch info by @loong-hy in https://github.com/open-telemetry/opentelemetry-cpp/pull/3052
- [CI] Update otel-collector version by @fabriziomello in https://github.com/open-telemetry/opentelemetry-cpp/pull/3067
- [SDK] Update MetricProducer interface to match spec by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/3044
- [EXPORTER] Fix URL in ES exporter, fix ipv6 supporting for http client. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/3081
- [EXPORTER] Add HttpHeaders in ElasticsearchLogRecordExporter by @ShadowMaxLeb in https://github.com/open-telemetry/opentelemetry-cpp/pull/3083
- [RELEASE] Release opentelemetry-cpp 1.17.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3076
Breaking changes
-
[REMOVAL] Remove build option
WITH_DEPRECATED_SDK_FACTORY
#2717-
As announced in opentelemetry-cpp previous release 1.16.0, CMake option
WITH_DEPRECATED_SDK_FACTORY
was temporary, and to be removed by the next release. -
This option is now removed.
-
Code configuring the SDK must be adjusted, as previously described:
-
[API/SDK] Provider cleanup #2664
-
Before this fix:
-
SDK factory methods such as:
- opentelemetry::sdk::trace::TracerProviderFactory::Create()
- opentelemetry::sdk::metrics::MeterProviderFactory::Create()
- opentelemetry::sdk::logs::LoggerProviderFactory::Create()
- opentelemetry::sdk::logs::EventLoggerProviderFactory::Create()
returned an API object (opentelemetry::trace::TracerProvider) to the caller.
-
-
After this fix, these methods return an SDK level object (opentelemetry::sdk::trace::TracerProvider) to the caller.
-
Returning an SDK object is necessary for the application to cleanup and invoke SDK level methods, such as ForceFlush(), on a provider.
-
The application code that configures the SDK, by calling the various provider factories, may need adjustment.
-
All the examples have been updated, and in particular no longer perform static_cast do convert an API object to an SDK object. Please refer to examples for guidance on how to adjust.
-
-
New Contributors
- @hongweipeng made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2661
- @BYVoid made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3015
- @Corristo made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3016
- @Troels51 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2992
- @codeboten made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3050
- @loong-hy made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3052
- @fabriziomello made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3067
- @ShadowMaxLeb made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/3083
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.16.1...v1.17.0
v1.16.1
: release
v1.16.1 release
Release of core packages
- opentelemetry-api
- opentelemetry-sdk
and exporter packages:
- opentelemetry-exporter-otlp (gRPC + HTTP/JSON)
- opentelemetry-exporter-prometheus
What's Changed
- [BUILD] Add bazel missing BUILD file by @tdat00 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2720
- [SDK] Added reserve for spans array in BatchSpanProcessor. by @msiddhu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2724
- [DOC] Update "Using triplets" section in building-with-vcpkg documentation. by @Pravila00 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2726
- [DOC] Remove comment for unused LoggerProvider initialization params by @herman5 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2972
- [SECURITY] Remove OTLP HTTP support for TLS 1.0 and TLS 1.1, require TLS 1.2 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2722
- [TEST] Fix opentelemetry-collector bind address by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2989
- [EXPORTER] Fix references in AttributeValueVisitor by @meastp in https://github.com/open-telemetry/opentelemetry-cpp/pull/2985
- [Code health] include-what-you-use cleanup, part 2 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2704
- [Code Health] clang-tidy cleanup, part 1 by @msiddhu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2990
- [CI] Build failures with ABSEIL
2024011
and CMAKE 3.30 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3002 - [CI] Enable bzlmod by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2995
- [Metrics SDK] Fix hash calculation for nostd::string by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2999
- [RELEASE] Release opentelemetry-cpp version 1.16.1 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/3007
Breaking changes
- [SECURITY] Remove OTLP HTTP support for TLS 1.0 and TLS 1.1,
require TLS 1.2 or better
#2722
- The OTLP HTTP exporter no longer accept options like:
- min_TLS = 1.0
- min_TLS = 1.1
- max_TLS = 1.0
- max_TLS = 1.1
- When connecting to an OTLP HTTP endpoint, using
https
, the connection will require TLS 1.2 by default, unless min_TLS is set to 1.3 - Plain
http
connections (insecure) are not affected.
- The OTLP HTTP exporter no longer accept options like:
New Contributors
- @tdat00 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2720
- @msiddhu made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2724
- @Pravila00 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2726
- @herman5 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2972
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.16.0...v1.16.1
v1.16.0
: release
v1.16.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
- [BUILD] Upgrade bazel abseil from
2022062
.1 to2023080
.2 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2650 - [BUILD] Use
nostd::enable_if_t
instead ofstd::enable_if_t
by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2648 - [EXEMPLAR] Update ExemplarFilter and ExemplarReservoir for spec by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2372
- [BUILD] Link CoreFoundation on apple systems because some dependency packages require it by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2655
- [SDK] Avoid missing conditional variable update and simplify atomic bool by @arekay in https://github.com/open-telemetry/opentelemetry-cpp/pull/2553
- [BUILD] Build break in OLTP_FILE tests by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2659
- [EXPORTER] General cleanup for is_shutdown_ flags in exporters. by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2663
- [CI] Upgrade Maintainers CI to ubuntu-24.04 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2670
- [BUILD] Upgrade to opentelemetry-proto 1.3.1 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2669
- [API] Return NoopLogRecord from NoopLogger by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2668
- [BUILD] Remove the hard-coded separator in tracestate by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2672
- [SDK] Fix forceflush may wait for ever by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2584
- [API] DO not allow unsafe
Logger::EmitLogRecord
by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2673 - [BUILD] Read default proto version from
third_party_release
by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2677 - [CI] include-what-you-use by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2629
- [CI] Upgrade to clang-format 18 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2684
- [CI] Fix CI failures on Ubuntu 24.04 by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2686
- [SEMANTIC CONVENTIONS] Upgrade to version 1.26.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2687
- [API/SDK] Provider cleanup by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2664
- [ETW] Add table name mapping for Logs other than the default Log table by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2691
- [CI] Remove benchmark overlay for vcpkg by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2695
- [BUILD] Remove the incorrect set of CMAKE_MSVC_RUNTIME_LIBRARY for vcpkg by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2696
- [BUILD] CMakeLists.txt: Enable CMAKE_MSVC_RUNTIME_LIBRARY support by @t-b in https://github.com/open-telemetry/opentelemetry-cpp/pull/2652
- [EXPORTER] OTLP file: use thread-safe file/io by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2675
- [bazel] Bump version and deps by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2679
- [BUILD] Add support for bzlmod by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2608
- [BUILD] Fix Import Abseil-cpp by @LeiZhang-Hunter in https://github.com/open-telemetry/opentelemetry-cpp/pull/2701
- [Code health] include-what-you-use cleanup by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2692
- [BUILD] Restore Bazel flag removed from public API by @dbolduc in https://github.com/open-telemetry/opentelemetry-cpp/pull/2702
- [DOC] Fix typo tace_id -> trace_id in logger.h by @yijiem in https://github.com/open-telemetry/opentelemetry-cpp/pull/2703
- Bump docker/build-push-action from 5 to 6 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2705
- [CI] Enable ARM64 build in CI by @esigo in https://github.com/open-telemetry/opentelemetry-cpp/pull/2699
- [Code health] Remove Unicode Text from Source files by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2707
- [BUILD] Add option
WITH_OTLP_GRPC_SSL_MTLS_PREVIEW
by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2714 - [EXPORTER] All 2xx return codes should be considered successful. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2712
- [RELEASE] Release opentelemetry-cpp version 1.16.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2711
Important changes
- [API/SDK] Provider cleanup
#2664
- Before this fix:
- The API class
opentelemetry::trace::Tracer
exposed methods such asForceFlush()
,ForceFlushWithMicroseconds()
,Close()
andCloseWithMicroseconds()
. - These methods are meant to be used when configuring the SDK, and should not be part of the API. Exposing them was an oversight.
- Two of these methods are virtual, and therefore part of the ABI.
- The API class
- After this fix:
- In
OPENTELEMETRY_ABI_VERSION_NO 1
, nothing is changed, because removing this code would break the ABI. - In
OPENTELEMETRY_ABI_VERSION_NO 2
, these methods are moved from the API to the SDK. This is a breaking change for ABI version 2, which is still experimental.
- In
- In all cases, instrumenting an application should not invoke flush or close on a tracer, do not use these methods.
- Before this fix:
Breaking changes
- [API/SDK] Provider cleanup
#2664
- Before this fix:
- SDK factory methods such as:
- opentelemetry::sdk::trace::TracerProviderFactory::Create()
- opentelemetry::sdk::metrics::MeterProviderFactory::Create()
- opentelemetry::sdk::logs::LoggerProviderFactory::Create()
- opentelemetry::sdk::logs::EventLoggerProviderFactory::Create() returned an API object (opentelemetry::trace::TracerProvider) to the caller.
- SDK factory methods such as:
- After this fix, these methods return an SDK level object (opentelemetry::sdk::trace::TracerProvider) to the caller.
- Returning an SDK object is necessary for the application to cleanup and invoke SDK level methods, such as ForceFlush(), on a provider.
- The application code that configures the SDK, by calling the various provider factories, may need adjustment.
- All the examples have been updated, and in particular no longer perform static_cast do convert an API object to an SDK object. Please refer to examples for guidance on how to adjust.
- If adjusting application code is impractical, an alternate and temporary solution is to build with option WITH_DEPRECATED_SDK_FACTORY=ON in CMake.
- Option WITH_DEPRECATED_SDK_FACTORY=ON will allow to build code without application changes, posponing changes for later.
- WITH_DEPRECATED_SDK_FACTORY=ON is temporary, only to provide an easier migration path. Expect this flag to be removed, as early as by the next release.
- Before this fix:
Notes on experimental features
-
#2372
introduced
MeterProvider::SetExemplar()
which accepts anExemplarFilterType
enumeration withkAlwaysOff
,kAlwaysOn
andkTraceBased
.
New Contributors
- @arekay made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2553
- @t-b made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2652
- @LeiZhang-Hunter made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2701
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.15.0...v1.16.0
v1.15.0
: v1.15.0 release
v1.15.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
- Reapply "Change OTLP HTTP content_type default to binary (#2558)" by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2564
- [DOC] Fix OTLP documentation: Default endpoint is wrong for OTLP/HTTP by @alanwest in https://github.com/open-telemetry/opentelemetry-cpp/pull/2560
- [BUILD] Fix old style cast warning by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2567
- [EXPORTER] Gzip compression support for OTLP/HTTP and OTLP/gRPC exporter by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2530
- [BUILD] update vcpkg submodule to 2024.02.14 by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2575
- [SDK] Support for OTEL_SERVICE_NAME by @willie in https://github.com/open-telemetry/opentelemetry-cpp/pull/2577
- [EXPORTER] Support URL-encoded values for
OTEL_EXPORTER_OTLP_HEADERS
by @pyohannes in https://github.com/open-telemetry/opentelemetry-cpp/pull/2579 - [BUILD] CMake cleanup for message() by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2582
- [BUILD] Bump CMake minimum required version to 3.9 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2581
- [BUILD] Provide LIKELY / UNLIKELY macros by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2580
- [EXPORTER] OTLP: Fix missing ResourceMetrics SchemaURL by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2587
- [etw] cleanup include path by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2594
- Upgrade to googletest 1.14.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2596
- Upgrade to nlohmann_json 3.11.3 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2595
- [bazel] Move -std=c++14 to .bazelrc by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2600
- [bazel] Fix -std=c++14 warning on Windows by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2601
- Upgrade to benchmark 1.8.3 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2597
- Upgrade to prometheus 1.2.4 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2598
- [doc] Fix typo: Asynchronouse -> Asynchronous in meter.h by @yijiem in https://github.com/open-telemetry/opentelemetry-cpp/pull/2604
- [BUILD] Do not link
prometheus-cpp::util
when it doesn't exist by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2606 - [SDK] Remove unused variable by @keith in https://github.com/open-telemetry/opentelemetry-cpp/pull/2609
- [METRICS SDK] Remove extra OfferMeasurement call in SyncMetricsStorage::OfferMeasurement by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2610
- [MISC] Use set -e on all shell scripts and pass shellcheck --severity=error by @johnbley in https://github.com/open-telemetry/opentelemetry-cpp/pull/2616
- [CI] Add shellcheck --severity=error as a CI step by @johnbley in https://github.com/open-telemetry/opentelemetry-cpp/pull/2618
- [CI] Upgrade to abseil
2024011
.1 (CMake only) by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2599 - [CI] Benchmark, provide units with --benchmark_min_time by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2621
- [EXPORTER] OTLP file exporter by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2540
- [CI] Use platform CMake by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2627
- [PROTO] Upgrade to opentelemetry-proto 1.2.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2631
- [SDK] DefaultLogHandler to print errors to std::cerr, add LogLevel::None by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2622
- [SEMANTIC CONVENTIONS] Upgrade to semantic convention 1.25.0 by @esigo in https://github.com/open-telemetry/opentelemetry-cpp/pull/2633
- [DOC] Add readme and examples for OTLP FILE exporters. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2638
- [SEMANTIC CONVENTIONS] Rework on semantic conventions 1.25.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2640
- [DOC] Update INSTALL.md by @chenhong805 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2592
- [RELEASE] Release opentelemetry-cpp version 1.15.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2639
Important changes:
- [EXPORTER] Gzip compression support for OTLP/HTTP and OTLP/gRPC exporter
#2530
- In the
OtlpHttpExporterOptions
andOtlpGrpcExporterOptions
, a new field called compression has been introduced. This field can be set to "gzip” to enable gzip compression. - The CMake option
WITH_OTLP_HTTP_COMPRESSION
is introduced to enable gzip compression support for the OTLP HTTP Exporter and includes a dependency on zlib.
- In the
- [SDK] Change OTLP HTTP content_type default to binary #2558
- [CI] Use platform CMake
#2627
- The
CI
in github no longer install a different version ofcmake
. - It now always use the
cmake
provided by the platform. - As part of this change, the script
ci/setup_cmake.sh
was renamed toci/setup_googletest.sh
, for clarity, now that this script only installs googletest.
- The
- [SDK] DefaultLogHandler to print to std::cerr, add LogLevel::None
#2622
- Change DefaultLogHandler output
- Before, the default internal logger, DefaultLogHandler, used to print to std::cout.
- Now, DefaultLogHandler prints errors and warnings to std::cerr, as expected, while printing info and debug messages to std::cout.
- Applications that expected to find the opentelemetry-cpp internal error log in std::cout may need adjustments, either by looking at std::cerr instead, or by using a custom log handler.
- Additional LogLevel::None
- LogLevel::None is a new supported log level, which does not print any message.
- Custom log handlers may need to implement a new case, to avoid compiler warnings.
- Numbering of log levels like OTEL_INTERNAL_LOG_LEVEL_ERROR has changed, which requires to rebuild, as the SDK ABI differs.
- Change DefaultLogHandler output
New Contributors
- @alanwest made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2560
- @keith made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2567
- @willie made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2577
- @yijiem made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2604
- @johnbley made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2616
- @chenhong805 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2592
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.14.2...v1.15.0
v1.14.2
: release
Release of core packages
- opentelemetry-api
- opentelemetry-sdk
What's Changed
- [SDK] Fix observable attributes drop #2557
v1.14.1
: release
v1.14.1 release
Release of core packages
- opentelemetry-api
- opentelemetry-sdk
and exporter packages:
- opentelemetry-exporter-otlp (gRPC + HTTP/JSON)
- opentelemetry-exporter-prometheus
What's Changed
- [DOC] Fix typo in benchmarks.rst by @orion160 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2542
- [BUILD] Incorrect test on ENABLE_OTLP_GRPC_SSL_MTLS_PREVIEW by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2546
- [EXPORTER] Error when grpc endpoint is empty by @HennerM in https://github.com/open-telemetry/opentelemetry-cpp/pull/2507
- [DOC] Add missing 1.14.0 CHANGELOG by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2549
- [SDK] Restore Recordable API compatibility with versions < 1.14.0 by @dbolduc in https://github.com/open-telemetry/opentelemetry-cpp/pull/2547
- [RELEASE] Release opentelemetry-cpp version 1.14.1 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2551
Important changes
- [SDK] Restore Recordable API compatibility with versions < 1.14.0
#2547
- For third party extending the SDK, release 1.14.0 introduced an API breaking change compared to 1.13.0
- This fix restores API (but not ABI) compatibility of release 1.14.1 with release 1.13.0.
- This allows to build a third party exporter with no source code changes, for both releases 1.14.1 and 1.13.0.
New Contributors
- @orion160 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2542
- @HennerM made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2507
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.14.0...v1.14.1
v1.14.0
: release
v1.14.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
- [BUILD] Remove gmock from GTEST_BOTH_LIBRARIES by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2437
- Bump actions/stale from 8 to 9 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2441
- [BUILD] Accept path list in OPENTELEMETRY_EXTERNAL_COMPONENT_PATH by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2439
- [BUILD] Fix removing of NOMINMAX on Windows by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2449
- [REMOVAL] Remove option WITH_OTLP_HTTP_SSL_PREVIEW by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2435
- Bump github/codeql-action from 2 to 3 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2452
- [BUILD] Introduce CXX 20 CI pipeline for MSVC/Windows by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2450
- [SEMANTIC CONVENTIONS] Code generation script fails on SELINUX by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2455
- Bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2456
- [EXPORTER] Add option to disable Prometheus otel_scope_name and otel_scope_version attributes by @timwoj in https://github.com/open-telemetry/opentelemetry-cpp/pull/2451
- [EXPORTER] Fix Aggregation type detection in OTLP Exporter by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2467
- [EXPORTER] Do not use regex in
CleanUpString
because some implementations of STL may crash. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2464 - [EXPORTER and SDK] Additional fixes after NOMINMAX removal on Windows by @meastp in https://github.com/open-telemetry/opentelemetry-cpp/pull/2475
- Remove duplicate install command in CMakeLists.txt for api by @meastp in https://github.com/open-telemetry/opentelemetry-cpp/pull/2474
- [EXPORTER] Set is_monotonic flag for Observable Counters by @samin36 in https://github.com/open-telemetry/opentelemetry-cpp/pull/2478
- [EXPORTER] Rename populate_otel_scope to without_otel_scope by @timwoj in https://github.com/open-telemetry/opentelemetry-cpp/pull/2479
- [BUILD] Skip patch alias target by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2457
- [PROTO] Upgrade to opentelemetry-proto v1.1.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2488
- [EXPORTER] Fix forward protocol encoding for ETW exporter by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2473
- Bump actions/cache from 3 to 4 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2491
- [EXAMPLES] Use logs API instead of logs bridge API in the example by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2494
- [BUILD] Fix checks on __cplusplus under MSVC, do not assume /Zc by @bcsgh in https://github.com/open-telemetry/opentelemetry-cpp/pull/2493
- [BUILD] Add DLL build CI pipeline with CXX20 by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2465
- [BUILD] Fix variable shadow by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2498
- [DOCUMENTATION] Add api reference documentation for logs by @S-Bohn in https://github.com/open-telemetry/opentelemetry-cpp/pull/2497
- [CI] Make cmake.c++20*.test actualy use C++20 and add cmake.c++23*.test by @bcsgh in https://github.com/open-telemetry/opentelemetry-cpp/pull/2496
- [BUILD] Alternative way of exporting symbols (generating .def file) by @meastp in https://github.com/open-telemetry/opentelemetry-cpp/pull/2476
- [BUILD] Fix multiple assignment operators for SpinLockMutex by @SaiHarshaK in https://github.com/open-telemetry/opentelemetry-cpp/pull/2501
- [BUILD] Clang-15 warning about
__has_trivial_destructor
by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2502 - [EXAMPLES] Improve readme of Metrics example by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2510
- [SEMANTIC CONVENTIONS] Upgrade to version 1.24.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2461
- [BUILD] Remove unnecessary usage/includes of nostd/type_traits by @bogdandrutu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2509
- Bump peter-evans/create-or-update-comment from 3.1.0 to 4.0.0 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2512
- Updated the recorded vcpkg submodule version by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2513
- [API] Propagators: do not overwrite the active span with a default invalid span by @ecourreges-orange in https://github.com/open-telemetry/opentelemetry-cpp/pull/2511
- [DOC] Fixes CI markdown error MD055 - Table pipe style by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2517
- [BUILD] Better handling of OPENTELEMETRY_STL_VERSION under Bazel. by @bcsgh in https://github.com/open-telemetry/opentelemetry-cpp/pull/2503
- Bump codecov/codecov-action from 3 to 4 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2519
- Fix attribute filtering for synchronous instruments. by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2472
- [EXPORTER] Async exporting for otlp grpc by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2407
- Don't invoke vcpkg from this repo with CMAKE_TOOLCHAIN_FILE set by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2527
- Remove namespace using in ETW exporter which affects global namespace by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2531
- [DOC] Fix calendar link by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2532
- [API] Propagation: fix for hex conversion to binary for odd hex strings by @karusher in https://github.com/open-telemetry/opentelemetry-cpp/pull/2533
- [RELEASE] opentelemetry-cpp version 1.14.0 by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2537
Breaking Changes:
-
[REMOVAL] Remove option WITH_OTLP_HTTP_SSL_PREVIEW #2435
- CMake options
WITH_OTLP_HTTP_SSL_PREVIEW
andWITH_OTLP_HTTP_SSL_TLS_PREVIEW
are removed. Building opentelemetry-cpp without SSL support is no longer possible.
- CMake options
-
[PROTO] Upgrade to opentelemetry-proto v1.1.0 #2488
- Class
opentelemetry::sdk::trace::Recordable
has a new virtual method,SetTraceFlags()
. - This is an incompatible change for the SDK Recordable API and ABI.
- Applications configuring the SDK are not affected.
- Third parties providing SDK extensions are affected,
and must provide a
SetTraceFlags()
implementation, starting with opentelemetry-cpp 1.14.0.
- Class
New Contributors
- @timwoj made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2451
- @samin36 made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2478
- @bcsgh made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2493
- @S-Bohn made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2497
- @SaiHarshaK made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2501
- @ecourreges-orange made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2511
- @karusher made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2533
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.13.0...v1.14.0
v1.13.0
: release
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
- [BUILD] Remove WITH_REMOVE_METER_PREVIEW, use WITH_ABI_VERSION_2 instead by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2370
- [SDK] Metrics ObservableRegistry Cleanup by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2376
- [BUILD] Make WITH_OTLP_HTTP_SSL_PREVIEW mainstream by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2378
- [SDK] Creating DoubleUpDownCounter with no matching view by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2379
- [API] Add InstrumentationScope attributes in TracerProvider::GetTracer() by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2371
- Bump peter-evans/create-or-update-comment from 3.0.2 to 3.1.0 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2381
- [BUILD] DLL export interface for Metrics by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2344
- [BUILD] enum CanonicalCode names too generic... conflict with old C defines by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2385
- [BUILD] Fix cpack broken package version by @jafonso in https://github.com/open-telemetry/opentelemetry-cpp/pull/2386
- [API] Add a new AddLink() operation to Span by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2380
- [opentracing-shim] Add check for sampled context by @chusitoo in https://github.com/open-telemetry/opentelemetry-cpp/pull/2390
- [BUILD] Fix exported definitions when building DLL with STL by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2387
- [BUILD] Add missing includes to runtime_context_test by @perhapsmaple in https://github.com/open-telemetry/opentelemetry-cpp/pull/2395
- [ADMIN] Add file .github/repository-settings.md by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2392
- [SDK] Fix GetLogger with empty library name by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2398
- [TEST] Fix compiling problem and removed -DENABLE_TEST by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2401
- [BUILD] Check windows options are not passed to non-Windows build by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2399
- [EXPORTER] Rework OTLP/HTTP and OTLP/GRPC exporter options by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2388
- Bump actions/github-script from 6 to 7 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2403
- [Build] Update vcpkg to latest release by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2412
- [SDK] Cardinality limits for metrics streams (Sync Instruments + Delta Temporality) by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2255
- [EXPORTER] Prometheus: Add unit to names, convert to word by @esigo in https://github.com/open-telemetry/opentelemetry-cpp/pull/2213
- [Metrics] Make context optional for histogram instruments in Metrics SDK by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2416
- [BUILD] Fix references to trace namespace to be fully qualified by @bogdandrutu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2422
- [BUILD] Bump third_party/googletest to same version as bazel by @bogdandrutu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2421
- [BUILD] Remove defining NOMINMAX from api by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2420
- [BUILD] 'uint8_t' not declared in this scope with gcc 13.2.1 by @Thomas-Barbier-1A in https://github.com/open-telemetry/opentelemetry-cpp/pull/2423
- [BUILD] Improve the handling of OPENTELEMETRY_HAVE_WORKING_REGEX. by @kylepl in https://github.com/open-telemetry/opentelemetry-cpp/pull/2430
- [SEMANTIC CONVENTIONS] Upgrade to semconv version 1.23.1 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2428
- [BUILD] Use fully qualified references to trace/common namespace by @bogdandrutu in https://github.com/open-telemetry/opentelemetry-cpp/pull/2424
- [API] Create root span with active span by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2427
- [REMOVAL] Remove ZPAGES by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2433
- [RELEASE] Prepare release 1.13.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2432
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 theCMake
optionWITH_ABI_VERSION_2=ON
. - When building with
CMake
optionWITH_ABI_VERSION_1=ON
(by default) theABI
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 theCMake
optionWITH_ABI_VERSION_2=ON
. - When building with
CMake
optionWITH_ABI_VERSION_1=ON
(by default) theABI
is unchanged, and the fix is not available.
- New
-
[BUILD] Make WITH_OTLP_HTTP_SSL_PREVIEW mainstream #2378
- The experimental
CMake
optionWITH_OTLP_HTTP_SSL_PREVIEW
is now promoted to stable. The default is changed toON
. - The experimental
CMake
optionWITH_OTLP_HTTP_SSL_TLS_PREVIEW
is now promoted to stable. The default is changed toON
. - These build options are scheduled to be removed by the next release, building without SSL/TLS will no longer be possible.
- The experimental
-
[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
optionWITH_REMOVE_METER_PREVIEW
is removed, use optionWITH_ABI_VERSION_2
instead.
- The experimental
-
[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.
- Header file
-
[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 usedOtlpGrpcExporterOptions
, 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 useOtlpGrpcLogRecordExporterOptions
instead, fixing the bug. - User code that initializes the SDK with a GRPC Log exporter,
and uses exporter options, should adjust to replace
OtlpGrpcExporterOptions
withOtlpGrpcLogRecordExporterOptions
. - 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
- @perhapsmaple made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2376
- @jafonso made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2386
- @Thomas-Barbier-1A made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2423
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.12.0...v1.13.0
v1.12.0
: release
v1.12.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
- [BUILD] Support
pkg-config
by @dbolduc in https://github.com/open-telemetry/opentelemetry-cpp/pull/2269 - [CI] Do not automatically close stale issues by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2277
- [CI] Benchmark workflow fails, C++14 required to build grpc by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2278
- [SDK] Increase metric name maximum length from 63 to 255 characters by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2284
- [SEMANTIC CONVENTION] Deprecated semconv (in the spec) not deprecated (in C++) by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2285
- [SDK] Remove unused member variables from SyncMetricStorage by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2294
- Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2295
- [DEPRECATION] Deprecate ZPAGES by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2291
- Bump docker/setup-qemu-action from 2 to 3 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2306
- Bump docker/build-push-action from 4 to 5 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2308
- Bump docker/setup-buildx-action from 2 to 3 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2307
- [API] Deliver ABI breaking changes by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2222
- [SDK] Allow metric instrument names to contain / characters by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2310
- Bump codecov/codecov-action from 3 to 4 by @dependabot in https://github.com/open-telemetry/opentelemetry-cpp/pull/2314
- Revert "Bump codecov/codecov-action from 3 to 4" by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2315
- [SDK] Fix Observable Counters/UpDownCounters by @lalitb in https://github.com/open-telemetry/opentelemetry-cpp/pull/2298
- [SDK] Add exemplar reservoir to async metric storage by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2319
- [TEST] Fix lifetime issues in prometheus test utils by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/2322
- [EXPORTER] Prometheus: Remove explicit timestamps from metric points by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/2324
- [EXPORTER] Prometheus: Handle attribute key collisions from sanitation by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/2326
- [EXPORTER] Prometheus cleanup, test with TranslateToPrometheus by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/2329
- [SDK] Fix log message in Meter::RegisterSyncMetricStorage by @ThomsonTan in https://github.com/open-telemetry/opentelemetry-cpp/pull/2325
- [DOC] Simplify the project status section by @reyang in https://github.com/open-telemetry/opentelemetry-cpp/pull/2332
- [EXPORTER] Prometheus: Sanitize labels according to spec by @punya in https://github.com/open-telemetry/opentelemetry-cpp/pull/2330
- [SDK] Fix deadlock when shuting down http client by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2337
- [Exporter] Group spans by resource and instrumentation scope in OTLP export requests by @mbrobbel in https://github.com/open-telemetry/opentelemetry-cpp/pull/2335
- [BUILD] Need fine-grained HAVE_CPP_STDLIB by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2304
- [API] Add InstrumentationScope attributes in MeterProvider::GetMeter() by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2224
- [REMOVAL] Drop C++11 support by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2342
- [EXPORTER] prometheus: add otel_scope_name and otel_scope_version labels by @dashpole in https://github.com/open-telemetry/opentelemetry-cpp/pull/2293
- [EXPORTER] Export resource for prometheus by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2301
- [BUILD] error: read-only reference ‘value’ used as ‘asm’ output by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2354
- [BUILD] Build break with external CMake nlohman_json package by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2353
- [BUILD] Upgrade libcurl to version 8.4.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2358
- [BUILD] Fix opentracing-shim when added in super project by @andremarianiello in https://github.com/open-telemetry/opentelemetry-cpp/pull/2356
- [BUILD] Fix protoc searching with non-imported protobuf::protoc target by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2362
- [BUILD] Support to use different cmake package CONFIG of dependencies. by @owent in https://github.com/open-telemetry/opentelemetry-cpp/pull/2263
- [SEMANTIC CONVENTION] Upgrade to semconv 1.22.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2368
- [RELEASE] Prepare release 1.12.0 by @marcalff in https://github.com/open-telemetry/opentelemetry-cpp/pull/2359
Important changes
- [API] Add InstrumentationScope attributes in MeterProvider::GetMeter()
#2224
- MeterProvider::GetMeter() now accepts InstrumentationScope attributes.
- Because this is an
ABI
breaking change, the fix is only available with theCMake
optionWITH_ABI_VERSION_2=ON
. - When building with
CMake
optionWITH_ABI_VERSION_1=ON
(by default) theABI
is unchanged, and the fix is not available.
Breaking changes
-
[BUILD] Need fine-grained HAVE_CPP_STDLIB #2304
- In
CMAKE
, the boolean optionWITH_STL
as changed to an option that accepts the valuesOFF
,ON
,CXX11
,CXX14
,CXX17
,CXX20
andCXX23
. - Applications makefiles that did not set WITH_STL need to use
WITH_STL=OFF
instead (this is the default). - Applications makefiles that did set WITH_STL need to use
WITH_STL=ON
instead, or may choose to pick a specific value. - In the
API
header files, the preprocessor symbolHAVE_CPP_STDLIB
is no longer used. - Applications that did set
HAVE_CPP_STDLIB
before, need to setOPENTELEMETRY_STL_VERSION=<version>
instead, to build with a specific STL version (2011, 2014, 2017, 2020, 2023). - The opentelemetry-cpp makefile no longer sets CMAKE_CXX_STANDARD by itself. Instead, the CMAKE_CXX_STANDARD and/or compiler options -stdc++ used by the caller are honored.
- Applications that set neither CMAKE_CXX_STANDARD nor -stdc++ options may need to provide a C++ standard in their makefiles.
- In
-
[REMOVAL] Drop C++11 support #2342
- Building with C++11 is no longer supported.
New Contributors
- @punya made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2322
- @dashpole made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2293
- @andremarianiello made their first contribution in https://github.com/open-telemetry/opentelemetry-cpp/pull/2356
Full Changelog: https://github.com/open-telemetry/opentelemetry-cpp/compare/v1.11.0...v1.12.0
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.