The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofTraceServiceClient.
The optionaloptionsargument may be used to configure aspects of the returnedTraceServiceConnection. Expected options are any of the types in the following option lists:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the Google Cloud C++ client library's Trace API, specifically version 2.16.0, which allows for collecting and viewing traces and spans.\u003c/p\u003e\n"],["\u003cp\u003eThe latest release is version 2.37.0-rc, and the page offers access to documentation for numerous prior versions ranging down to 2.11.0 for those looking at previous releases.\u003c/p\u003e\n"],["\u003cp\u003eKey classes include \u003ccode\u003eTraceServiceClient\u003c/code\u003e for trace interaction, \u003ccode\u003eTraceServiceConnection\u003c/code\u003e for managing the connection, and various policy classes for retries and error handling.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMakeTraceServiceConnection\u003c/code\u003e function is provided to create a \u003ccode\u003eTraceServiceConnection\u003c/code\u003e object, which is then passed to the constructor of \u003ccode\u003eTraceServiceClient\u003c/code\u003e, and it may be configured using options from \u003ccode\u003eCommonOptionList\u003c/code\u003e, \u003ccode\u003eGrpcOptionList\u003c/code\u003e, \u003ccode\u003eUnifiedCredentialsOptionList\u003c/code\u003e and \u003ccode\u003eTraceServicePolicyOptionList\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe page also includes a way to make a default TraceServiceConnectionIdempotencyPolicy, along with an alias for TraceServicePolicyOptionList that covers the applicable options for the API.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::trace_v2 (2.16.0)\n\nVersion 2.16.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/trace/latest/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.41.0](/cpp/docs/reference/trace/2.41.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.40.0](/cpp/docs/reference/trace/2.40.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.39.0](/cpp/docs/reference/trace/2.39.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.38.0](/cpp/docs/reference/trace/2.38.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.37.0](/cpp/docs/reference/trace/2.37.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.36.0](/cpp/docs/reference/trace/2.36.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.35.0](/cpp/docs/reference/trace/2.35.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.34.0](/cpp/docs/reference/trace/2.34.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.33.0](/cpp/docs/reference/trace/2.33.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.32.0](/cpp/docs/reference/trace/2.32.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.31.0](/cpp/docs/reference/trace/2.31.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.30.0](/cpp/docs/reference/trace/2.30.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.29.0](/cpp/docs/reference/trace/2.29.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.28.0](/cpp/docs/reference/trace/2.28.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.27.0](/cpp/docs/reference/trace/2.27.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.26.0](/cpp/docs/reference/trace/2.26.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.25.1](/cpp/docs/reference/trace/2.25.1/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.24.0](/cpp/docs/reference/trace/2.24.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.23.0](/cpp/docs/reference/trace/2.23.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.22.1](/cpp/docs/reference/trace/2.22.1/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.21.0](/cpp/docs/reference/trace/2.21.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.20.0](/cpp/docs/reference/trace/2.20.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.19.0](/cpp/docs/reference/trace/2.19.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.18.0](/cpp/docs/reference/trace/2.18.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.17.0](/cpp/docs/reference/trace/2.17.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.16.0](/cpp/docs/reference/trace/2.16.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.15.1](/cpp/docs/reference/trace/2.15.1/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.14.0](/cpp/docs/reference/trace/2.14.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.13.0](/cpp/docs/reference/trace/2.13.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.12.0](/cpp/docs/reference/trace/2.12.0/namespacegoogle_1_1cloud_1_1trace__v2)\n- [2.11.0](/cpp/docs/reference/trace/2.11.0/namespacegoogle_1_1cloud_1_1trace__v2) \n\nClasses\n-------\n\n### [TraceServiceClient](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceClient)\n\nService for collecting and viewing traces and spans within a trace.\n\n### [TraceServiceConnection](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection)\n\nThe [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) object for [`TraceServiceClient`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceClient).\n\n### [TraceServiceConnectionIdempotencyPolicy](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnectionIdempotencyPolicy)\n\n### [TraceServiceLimitedErrorCountRetryPolicy](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceLimitedErrorCountRetryPolicy)\n\nA retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) based on counting errors.\n\n### [TraceServiceLimitedTimeRetryPolicy](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceLimitedTimeRetryPolicy)\n\nA retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) based on elapsed time.\n\n### [TraceServiceRetryPolicy](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceRetryPolicy)\n\nThe retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection).\n\nStructs\n-------\n\n### [TraceServiceBackoffPolicyOption](/cpp/docs/reference/trace/2.16.0/structgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceBackoffPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the backoff policy.\n\n### [TraceServiceConnectionIdempotencyPolicyOption](/cpp/docs/reference/trace/2.16.0/structgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnectionIdempotencyPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure which operations are retried.\n\n### [TraceServiceRetryPolicyOption](/cpp/docs/reference/trace/2.16.0/structgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceRetryPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the retry policy.\n\nFunctions\n---------\n\n### MakeTraceServiceConnection(Options)\n\nA factory function to construct an object of type [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [TraceServiceClient](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`TraceServiceConnection`](/cpp/docs/reference/trace/2.16.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection). Expected options are any of the types in the following option lists:\n\n- [`google::cloud::CommonOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::GrpcOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::UnifiedCredentialsOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::trace_v2::TraceServicePolicyOptionList`](/cpp/docs/reference/trace/2.16.0/namespacegoogle_1_1cloud_1_1trace__v2)\n\n| **Note:** Unexpected options will be ignored. To log unexpected options instead, set `GOOGLE_CLOUD_CPP_ENABLE_CLOG=yes` in the environment.\n\n### MakeDefaultTraceServiceConnectionIdempotencyPolicy()\n\nType Aliases\n------------\n\n### TraceServicePolicyOptionList\n\n**Alias Of** : `OptionList\u003c TraceServiceRetryPolicyOption, TraceServiceBackoffPolicyOption, TraceServiceConnectionIdempotencyPolicyOption \u003e` \nThe options applicable to TraceService."]]