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 #2564
- [DOC] Fix OTLP documentation: Default endpoint is wrong for OTLP/HTTP by @alanwest in #2560
- [BUILD] Fix old style cast warning by @keith in #2567
- [EXPORTER] Gzip compression support for OTLP/HTTP and OTLP/gRPC exporter by @perhapsmaple in #2530
- [BUILD] update vcpkg submodule to 2024.02.14 by @ThomsonTan in #2575
- [SDK] Support for OTEL_SERVICE_NAME by @willie in #2577
- [EXPORTER] Support URL-encoded values for
OTEL_EXPORTER_OTLP_HEADERS
by @pyohannes in #2579 - [BUILD] CMake cleanup for message() by @marcalff in #2582
- [BUILD] Bump CMake minimum required version to 3.9 by @marcalff in #2581
- [BUILD] Provide LIKELY / UNLIKELY macros by @marcalff in #2580
- [EXPORTER] OTLP: Fix missing ResourceMetrics SchemaURL by @perhapsmaple in #2587
- [etw] cleanup include path by @ThomsonTan in #2594
- Upgrade to googletest 1.14.0 by @marcalff in #2596
- Upgrade to nlohmann_json 3.11.3 by @marcalff in #2595
- [bazel] Move -std=c++14 to .bazelrc by @keith in #2600
- [bazel] Fix -std=c++14 warning on Windows by @keith in #2601
- Upgrade to benchmark 1.8.3 by @marcalff in #2597
- Upgrade to prometheus 1.2.4 by @marcalff in #2598
- [doc] Fix typo: Asynchronouse -> Asynchronous in meter.h by @yijiem in #2604
- [BUILD] Do not link
prometheus-cpp::util
when it doesn't exist by @owent in #2606 - [SDK] Remove unused variable by @keith in #2609
- [METRICS SDK] Remove extra OfferMeasurement call in SyncMetricsStorage::OfferMeasurement by @ThomsonTan in #2610
- [MISC] Use set -e on all shell scripts and pass shellcheck --severity=error by @johnbley in #2616
- [CI] Add shellcheck --severity=error as a CI step by @johnbley in #2618
- [CI] Upgrade to abseil 20240116.1 (CMake only) by @marcalff in #2599
- [CI] Benchmark, provide units with --benchmark_min_time by @marcalff in #2621
- [EXPORTER] OTLP file exporter by @owent in #2540
- [CI] Use platform CMake by @marcalff in #2627
- [PROTO] Upgrade to opentelemetry-proto 1.2.0 by @marcalff in #2631
- [SDK] DefaultLogHandler to print errors to std::cerr, add LogLevel::None by @marcalff in #2622
- [SEMANTIC CONVENTIONS] Upgrade to semantic convention 1.25.0 by @esigo in #2633
- [DOC] Add readme and examples for OTLP FILE exporters. by @owent in #2638
- [SEMANTIC CONVENTIONS] Rework on semantic conventions 1.25.0 by @marcalff in #2640
- [DOC] Update INSTALL.md by @chenhong805 in #2592
- [RELEASE] Release opentelemetry-cpp version 1.15.0 by @marcalff in #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.
- Before, the default internal logger, DefaultLogHandler,
- 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.
- LogLevel::None is a new supported log level, which does not print
- Change DefaultLogHandler output
New Contributors
- @alanwest made their first contribution in #2560
- @keith made their first contribution in #2567
- @willie made their first contribution in #2577
- @yijiem made their first contribution in #2604
- @johnbley made their first contribution in #2616
- @chenhong805 made their first contribution in #2592
Full Changelog: v1.14.2...v1.15.0