Files
sousa-gecko/third_party/opentelemetry-cpp
Ryan VanderMeulen 1580ea22df Bug 2065936 - Update prost-build to 0.14.4 and regenerate its output. r=timhuang
toolkit/components/protobuf/scripts sits in the workspace exclude list, so prost-build is
resolved from crates.io when the generator runs rather than vendored, and the bump carries no
supply-chain review. The lock also drops the getrandom chain that 0.14.3 pulled in.

The regenerated opentelemetry bindings are not fallout from the bump. 0.14.4 emits output byte
identical to 0.14.3; the checked-in files simply predate the move to prost-build 0.14, so they
still carry #[allow(clippy::derive_partial_eq_without_eq)], lack the Eq and Hash derives the
generator adds where every field supports them, and spell match arms with the enum name rather
than Self.

Differential Revision: https://phabricator.services.mozilla.com/D320756
2026-08-24 15:58:53 +00:00
..

OpenTelemetry C++

Slack codecov.io Build
Status Release FOSSA License Status FOSSA Security Status OpenSSF Scorecard

The C++ OpenTelemetry client.

Project Status

Stable across all 3 signals i.e. Logs, Metrics, and Traces.

See Spec Compliance Matrix to understand which portions of the specification has been implemented in this repo.

Supported C++ Versions

Code shipped from this repository generally supports the following versions of C++ standards:

  • ISO/IEC 14882:2014 (C++14)
  • ISO/IEC 14882:2017 (C++17)
  • ISO/IEC 14882:2020 (C++20)

Any exceptions to this are noted in the individual README.md files.

Please note that supporting the C Programming Language is not a goal of the current project.

Supported Development Platforms

Our CI pipeline builds and tests on following x86-64 platforms:

Platform Build type
ubuntu-22.04 (GCC 10, GCC 12, Clang 14) CMake, Bazel
ubuntu-20.04 (GCC 9.4.0 - default compiler) CMake, Bazel
ubuntu-20.04 (GCC 9.4.0 with -std=c++14/17/20 flags) CMake, Bazel
macOS 12.7 (Xcode 14.2) Bazel
Windows Server 2019 (Visual Studio Enterprise 2019) CMake, Bazel
Windows Server 2022 (Visual Studio Enterprise 2022) CMake

In general, the code shipped from this repository should build on all platforms having C++ compiler with supported C++ standards.

Dependencies

Please refer to Dependencies.md for OSS Dependencies and license requirements.

Installation

Please refer to INSTALL.md.

Bazel Central Registry

This project is available in the Bazel Central Registry (BCR). To use it with Bazel, add the following to your MODULE.bazel file:

bazel_dep(name = "opentelemetry-cpp", version = "x.y.z")

For the latest version, see BCR: opentelemetry-cpp.

Getting Started

As an application owner or the library author, you can find the getting started guide and reference documentation on opentelemetry-cpp.readthedocs.io

The examples/simple directory contains a minimal program demonstrating how to instrument a small library using a simple processor and console exporter, along with build files for CMake and Bazel.

Contributing

See CONTRIBUTING.md

We meet weekly, and the time of the meeting alternates between Monday at 13:00 PT and Wednesday at 9:00 PT. The meeting is subject to change depending on contributors' availability. Check the OpenTelemetry community calendar for specific dates and Zoom meeting links.

Meeting notes are available as a public Google doc.

For edit access, get in touch on the #otel-cpp channel on CNCF Slack. If you are new to the CNCF Slack community, you can create an account.

The meeting is open for all to join. We invite everyone to join our meeting, regardless of your experience level. Whether you're a seasoned OpenTelemetry developer, just starting your journey, or simply curious about the work we do, you're more than welcome to participate!

Maintainers

For more information about the maintainer role, see the community repository.

Approvers

For more information about the approver role, see the community repository.

Emeritus

For more information about the emeritus role, see the community repository.

Thanks to all the people who have contributed

contributors

Release Schedule

See the release notes for existing releases.

See the project milestones for details on upcoming releases. The dates and features described in issues and milestones are estimates, and subject to change.