Package com.google.api.gax.tracing (2.49.0)

Repository

Classes

ClassDescription
com.google.api.gax.tracing.BaseApiTracerA base implementation of ApiTracer that does nothing. With the deprecation of Java 7 support, all the methods in ApiTracer are now made default, we no longer need a base class that does nothing. This class should be removed once all the references to it are removed in Google Cloud Client Libraries.
com.google.api.gax.tracing.BaseApiTracerFactoryBase factory that will build ApiTracers that do nothing.

For .

com.google.api.gax.tracing.MethodNameA value class to represent the name of the RPC method in an ApiTracer.
com.google.api.gax.tracing.MetricsTracerThis class computes generic metrics that can be observed in the lifecycle of an RPC operation. The responsibility of recording metrics should delegate to MetricsRecorder, hence this class should not have any knowledge about the observability framework used for metrics recording. method_name and language will be autopopulated attributes. Default value of language is 'Java'.
com.google.api.gax.tracing.MetricsTracerFactoryA ApiTracerFactory to build instances of MetricsTracer.

This class wraps the MetricsRecorder and pass it to MetricsTracer. It will be used to record metrics in MetricsTracer.

com.google.api.gax.tracing.OpenTelemetryMetricsRecorderOpenTelemetry implementation of recording metrics. This implementation collections the measurements related to the lifecyle of an RPC.

For the Otel implementation, an attempt is a single RPC invocation and an operation is the

com.google.api.gax.tracing.OpencensusTracerImplementation of ApiTracer that uses OpenCensus.

This implementation wraps an OpenCensus Span for every tracer and annotates that Span with various events throughout the lifecycle of the logical operation.

com.google.api.gax.tracing.OpencensusTracerFactoryA ApiTracerFactory to build instances of OpencensusTracer.

This class wraps the Tracer provided by Opencensus in Tracing.getTracer(). It will be used to create new spans and wrap them in OpencensusTracer defined in gax.

com.google.api.gax.tracing.SpanNameA value class to represent the name of the operation in an ApiTracer.
com.google.api.gax.tracing.TracedBatchingCallableThis callable wraps a batching callable chain in a ApiTracer.

For .

com.google.api.gax.tracing.TracedBidiCallableA wrapper callable that will wrap a callable chain in a trace.

For .

com.google.api.gax.tracing.TracedClientCallableA wrapper callable that will wrap a callable chain in a trace.

This can be safely called from multiple threads. However the request ApiStreamObserver can only be used from a single thread.

com.google.api.gax.tracing.TracedOperationCallableThis callable wraps a OperationCallable in a ApiTracer.

For .

com.google.api.gax.tracing.TracedOperationInitialCallableTraces the initial RPC of a long running operation.

It will trace it like a child unary RPC and will also contribute to the parent tracer (created by TracedOperationCallable) the result of the call.

com.google.api.gax.tracing.TracedServerCallableA wrapper callable that will wrap a callable chain in a trace.

For .

com.google.api.gax.tracing.TracedUnaryCallableThis callable wraps a callable chain in a ApiTracer.

For .

Interfaces

InterfaceDescription
com.google.api.gax.tracing.ApiTracerImplementations of this class trace the logical flow of a google cloud client.

A single instance of a tracer represents a logical operation that can be annotated throughout its lifecycle. Constructing an instance of a subclass will implicitly signal the start of a new

com.google.api.gax.tracing.ApiTracer.ScopeA context class to be used with #inScope() and a try-with-resources block. Closing a Scope removes any context that the underlying implementation might've set in #inScope().
com.google.api.gax.tracing.ApiTracerFactoryA factory to create new instances of ApiTracers.

In general a single instance of an ApiTracer will correspond to a single logical operation.

com.google.api.gax.tracing.MetricsRecorderProvides an interface for metrics recording. The implementer is expected to use an observability framework, e.g. OpenTelemetry. There should be only one instance of MetricsRecorder per client, all the methods in this class are expected to be called from multiple threads, hence the implementation must be thread safe.

Enums

EnumDescription
com.google.api.gax.tracing.ApiTracerFactory.OperationTypeThe type of operation the ApiTracer is tracing.