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.17.0, and contains links to various versions of the API, with the latest being 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation includes information on \u003ccode\u003eTraceServiceClient\u003c/code\u003e and \u003ccode\u003eTraceServiceConnection\u003c/code\u003e, which are essential for interacting with the service to collect and manage traces and spans.\u003c/p\u003e\n"],["\u003cp\u003eSeveral retry policies, such as \u003ccode\u003eTraceServiceLimitedErrorCountRetryPolicy\u003c/code\u003e and \u003ccode\u003eTraceServiceLimitedTimeRetryPolicy\u003c/code\u003e, are detailed to address potential transient issues when utilizing the \u003ccode\u003eTraceServiceConnection\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eKey structs like \u003ccode\u003eTraceServiceBackoffPolicyOption\u003c/code\u003e, \u003ccode\u003eTraceServiceConnectionIdempotencyPolicyOption\u003c/code\u003e, and \u003ccode\u003eTraceServiceRetryPolicyOption\u003c/code\u003e are described to configure how the service behaves in different circumstances.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMakeTraceServiceConnection\u003c/code\u003e function is detailed, explaining how it is used as a factory to construct a \u003ccode\u003eTraceServiceConnection\u003c/code\u003e and outlining the various options applicable for its configuration, as well as what it returns.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::trace_v2 (2.17.0)\n\nVersion 2.17.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.17.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.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection)\n\nThe [`TraceServiceConnection`](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) object for [`TraceServiceClient`](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceClient).\n\n### [TraceServiceConnectionIdempotencyPolicy](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnectionIdempotencyPolicy)\n\n### [TraceServiceLimitedErrorCountRetryPolicy](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceLimitedErrorCountRetryPolicy)\n\nA retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) based on counting errors.\n\n### [TraceServiceLimitedTimeRetryPolicy](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceLimitedTimeRetryPolicy)\n\nA retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection) based on elapsed time.\n\n### [TraceServiceRetryPolicy](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceRetryPolicy)\n\nThe retry policy for [`TraceServiceConnection`](/cpp/docs/reference/trace/2.17.0/classgoogle_1_1cloud_1_1trace__v2_1_1TraceServiceConnection).\n\nStructs\n-------\n\n### [TraceServiceBackoffPolicyOption](/cpp/docs/reference/trace/2.17.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.17.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.17.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.17.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.17.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.17.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.17.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."]]