3.11.0-rc 3.10.0 (latest) 3.9.0 3.8.0 3.7.0 3.6.0 3.5.0 3.4.0 3.3.0 3.2.0 2.48.0-rc 2.47.1 2.46.0 2.45.0 2.44.0 2.43.0 2.42.0 2.41.0 2.40.0 2.39.0 2.38.0 2.37.0 2.36.0 2.35.0 2.34.0 2.33.0 2.32.0 2.31.0 2.30.0 2.29.0 2.28.0 2.27.0 2.26.0 2.25.1 2.24.0 2.23.0 2.22.1 2.21.0 2.20.0 2.19.0 2.18.0 2.17.0 2.16.0 2.15.1 2.14.0 2.13.0 2.12.0 2.11.0 2.10.1 Enables tracing with [OpenTelemetry](https://opentelemetry.io/docs/instrumentation/cpp/)
Setting this option enables the generation of [traces](https://opentelemetry.io/docs/concepts/observability-primer/#distributed-traces) by the client library. The library uses the global [tracer provider](https://opentelemetry.io/docs/concepts/signals/traces/#tracer-provider) to generate traces.

###### Prerequisites

The library must be compiled with OpenTelemetry in order for this option to take effect.

###### See Also

[The OpenTelemetry tracing quickstart](https://github.com/googleapis/google-cloud-cpp/tree/main/google/cloud/opentelemetry/quickstart) for instructions on how to compile google-cloud-cpp with opentelemetry-cpp.

###### Effect

Setting this option enables the generation of [traces](https://opentelemetry.io/docs/concepts/observability-primer/#distributed-traces) by the client library. The library uses the global [tracer provider](https://opentelemetry.io/docs/concepts/signals/traces/#tracer-provider) to generate traces.
To create a client that traces, this option must be provided to the `Make*Connection(...)` factory functions. It does not have an effect when passed to a client's constructor. If you use custom credentials, this option must also be provided to the `Make*Credentials(...)` factory functions in order to trace the authentication components.

###### Exporting traces

Providing this option only enables the *generation* of traces. It does not enable the *export* of traces.
In order to export the traces, the application must set the global tracer provider. The client library recommends using `#google::cloud::otel::ConfigureBasicTracing()` to configure the global tracer provider. This will send the traces generated by the client library to [Cloud Trace](https://cloud.google.com/trace), Google Cloud's visualizer for distributed traces.

###### See Also

[Google Cloud C++ OpenTelemetry reference docs](https://cloud.google.com/cpp/docs/reference/opentelemetry/latest).

###### Environment variable

This option is controlled by the `GOOGLE_CLOUD_CPP_OPENTELEMETRY_TRACING` environment variable. If the environment variable is set to a non-empty value, tracing with OpenTelemetry is enabled.

## Type Aliases

### Type

**Alias Of** : `bool`