[[["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."],[],[],null,["# Interface TraceUtil (2.31.2)\n\nVersion latestkeyboard_arrow_down\n\n- [2.31.2 (latest)](/java/docs/reference/google-cloud-datastore/latest/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.31.1](/java/docs/reference/google-cloud-datastore/2.31.1/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.30.0](/java/docs/reference/google-cloud-datastore/2.30.0/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.29.1](/java/docs/reference/google-cloud-datastore/2.29.1/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.28.2](/java/docs/reference/google-cloud-datastore/2.28.2/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.27.1](/java/docs/reference/google-cloud-datastore/2.27.1/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.26.4](/java/docs/reference/google-cloud-datastore/2.26.4/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.25.2](/java/docs/reference/google-cloud-datastore/2.25.2/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.24.3](/java/docs/reference/google-cloud-datastore/2.24.3/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.23.0](/java/docs/reference/google-cloud-datastore/2.23.0/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.22.0](/java/docs/reference/google-cloud-datastore/2.22.0/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.21.3](/java/docs/reference/google-cloud-datastore/2.21.3/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.20.2](/java/docs/reference/google-cloud-datastore/2.20.2/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.19.2](/java/docs/reference/google-cloud-datastore/2.19.2/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.18.5](/java/docs/reference/google-cloud-datastore/2.18.5/com.google.cloud.datastore.telemetry.TraceUtil)\n- [2.17.6](/java/docs/reference/google-cloud-datastore/2.17.6/com.google.cloud.datastore.telemetry.TraceUtil) \n\n public interface TraceUtil\n\nUtility interface to manage OpenTelemetry tracing instrumentation based on the configuration.\n\nStatic Fields\n-------------\n\n### ATTRIBUTES_KEY_DEFERRED\n\n public static final String ATTRIBUTES_KEY_DEFERRED\n\n### ATTRIBUTES_KEY_DOCUMENT_COUNT\n\n public static final String ATTRIBUTES_KEY_DOCUMENT_COUNT\n\n### ATTRIBUTES_KEY_MISSING\n\n public static final String ATTRIBUTES_KEY_MISSING\n\n### ATTRIBUTES_KEY_MORE_RESULTS\n\n public static final String ATTRIBUTES_KEY_MORE_RESULTS\n\n### ATTRIBUTES_KEY_READ_CONSISTENCY\n\n public static final String ATTRIBUTES_KEY_READ_CONSISTENCY\n\n### ATTRIBUTES_KEY_RECEIVED\n\n public static final String ATTRIBUTES_KEY_RECEIVED\n\n### ATTRIBUTES_KEY_TRANSACTIONAL\n\n public static final String ATTRIBUTES_KEY_TRANSACTIONAL\n\n### ATTRIBUTES_KEY_TRANSACTION_ID\n\n public static final String ATTRIBUTES_KEY_TRANSACTION_ID\n\n### ATTRIBUTE_SERVICE_PREFIX\n\n public static final String ATTRIBUTE_SERVICE_PREFIX\n\n### ENABLE_TRACING_ENV_VAR\n\n public static final String ENABLE_TRACING_ENV_VAR\n\n### LIBRARY_NAME\n\n public static final String LIBRARY_NAME\n\n### SPAN_NAME_ALLOCATE_IDS\n\n public static final String SPAN_NAME_ALLOCATE_IDS\n\n### SPAN_NAME_BEGIN_TRANSACTION\n\n public static final String SPAN_NAME_BEGIN_TRANSACTION\n\n### SPAN_NAME_COMMIT\n\n public static final String SPAN_NAME_COMMIT\n\n### SPAN_NAME_LOOKUP\n\n public static final String SPAN_NAME_LOOKUP\n\n### SPAN_NAME_RESERVE_IDS\n\n public static final String SPAN_NAME_RESERVE_IDS\n\n### SPAN_NAME_ROLLBACK\n\n public static final String SPAN_NAME_ROLLBACK\n\n### SPAN_NAME_RUN_AGGREGATION_QUERY\n\n public static final String SPAN_NAME_RUN_AGGREGATION_QUERY\n\n### SPAN_NAME_RUN_QUERY\n\n public static final String SPAN_NAME_RUN_QUERY\n\n### SPAN_NAME_TRANSACTION_COMMIT\n\n public static final String SPAN_NAME_TRANSACTION_COMMIT\n\n### SPAN_NAME_TRANSACTION_LOOKUP\n\n public static final String SPAN_NAME_TRANSACTION_LOOKUP\n\n### SPAN_NAME_TRANSACTION_RUN\n\n public static final String SPAN_NAME_TRANSACTION_RUN\n\n### SPAN_NAME_TRANSACTION_RUN_AGGREGATION_QUERY\n\n public static final String SPAN_NAME_TRANSACTION_RUN_AGGREGATION_QUERY\n\n### SPAN_NAME_TRANSACTION_RUN_QUERY\n\n public static final String SPAN_NAME_TRANSACTION_RUN_QUERY\n\nStatic Methods\n--------------\n\n### getInstance(DatastoreOptions datastoreOptions)\n\n public static TraceUtil getInstance(DatastoreOptions datastoreOptions)\n\nCreates and returns an instance of the TraceUtil class.\n\nMethods\n-------\n\n### addSettingsAttributesToCurrentSpan(SpanBuilder spanBuilder)\n\n public abstract SpanBuilder addSettingsAttributesToCurrentSpan(SpanBuilder spanBuilder)\n\nAdds common SpanAttributes to the current span, useful when hand-creating a new Span without\nusing the TraceUtil.Span interface.\n\n### getChannelConfigurator()\n\n public abstract ApiFunction\u003cManagedChannelBuilder,ManagedChannelBuilder\u003e getChannelConfigurator()\n\nReturns a channel configurator for gRPC, or `null` if tracing is disabled.\n\n### getCurrentContext()\n\n public abstract TraceUtil.Context getCurrentContext()\n\nReturns the current Context.\n\n### getCurrentSpan()\n\n public abstract TraceUtil.Span getCurrentSpan()\n\nReturns the current span.\n\n### getTracer()\n\n public abstract Tracer getTracer()\n\nReturns the current OpenTelemetry Tracer when OpenTelemetry SDK is provided.\n\n### startSpan(String spanName)\n\n public abstract TraceUtil.Span startSpan(String spanName)\n\nStarts a new span with the given name, sets it as the current span, and returns it.\n\n### startSpan(String spanName, TraceUtil.Span parentSpan)\n\n public abstract TraceUtil.Span startSpan(String spanName, TraceUtil.Span parentSpan)\n\nStarts a new span with the given name and the span represented by the parentSpan as its parent,\nsets it as the current span and returns it."]]