Interface ApiTracer (2.51.0)

public interface ApiTracer

Implementations 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 operation.

For internal use only. google-cloud-java libraries should extend BaseApiTracer.

Methods

attemptCancelled()

public default void attemptCancelled()

Add an annotation that the attempt was cancelled by the user.

attemptFailed(Throwable error, Duration delay)

public default void attemptFailed(Throwable error, Duration delay)

This method is obsolete. Use #attemptFailedDuration(Throwable, java.time.Duration) instead.

Parameters
Name Description
error Throwable
delay org.threeten.bp.Duration

attemptFailedDuration(Throwable error, Duration delay)

public default void attemptFailedDuration(Throwable error, Duration delay)

Adds an annotation that the attempt failed, but another attempt will be made after the delay.

Parameters
Name Description
error Throwable

the transient error that caused the attempt to fail.

delay Duration

the amount of time to wait before the next attempt will start.

attemptFailedRetriesExhausted(Throwable error)

public default void attemptFailedRetriesExhausted(Throwable error)

Adds an annotation that the attempt failed and that no further attempts will be made because retry limits have been reached.

Parameter
Name Description
error Throwable

the last error received before retries were exhausted.

attemptPermanentFailure(Throwable error)

public default void attemptPermanentFailure(Throwable error)

Adds an annotation that the attempt failed and that no further attempts will be made because the last error was not retryable.

Parameter
Name Description
error Throwable

the error that caused the final attempt to fail.

attemptStarted(int attemptNumber) (deprecated)

public default void attemptStarted(int attemptNumber)

Deprecated. Please use #attemptStarted(Object, int) instead.

Adds an annotation that an attempt is about to start. In general this should occur at the very start of the operation. The attemptNumber is zero based. So the initial attempt will be 0.

Parameter
Name Description
attemptNumber int

the zero based sequential attempt number.

attemptStarted(Object request, int attemptNumber)

public default void attemptStarted(Object request, int attemptNumber)

Adds an annotation that an attempt is about to start with additional information from the request. In general this should occur at the very start of the operation. The attemptNumber is zero based. So the initial attempt will be 0.

Parameters
Name Description
request Object

request of this attempt.

attemptNumber int

the zero based sequential attempt number.

attemptSucceeded()

public default void attemptSucceeded()

Adds an annotation that the attempt succeeded.

batchRequestSent(long elementCount, long requestSize)

public default void batchRequestSent(long elementCount, long requestSize)

Adds an annotation that a batch of writes has been flushed.

Parameters
Name Description
elementCount long

the number of elements in the batch.

requestSize long

the size of the batch in bytes.

connectionSelected(String id)

public default void connectionSelected(String id)

Annotates the operation with selected connection id from the ChannelPool.

Parameter
Name Description
id String

the local connection identifier of the selected connection.

inScope()

public default ApiTracer.Scope inScope()

Asks the underlying implementation to install itself as a thread local. This allows for interop between clients using gax and external resources to share the same implementation of the tracing. For example OpenCensus will install a thread local that can read by the GRPC.

Returns
Type Description
ApiTracer.Scope

lroStartFailed(Throwable error)

public default void lroStartFailed(Throwable error)

Signals that the initial RPC for the long running operation failed.

Parameter
Name Description
error Throwable

the error that caused the long running operation fail.

lroStartSucceeded()

public default void lroStartSucceeded()

Signals that the initial RPC successfully started the long running operation. The long running operation will now be polled for completion.

operationCancelled()

public default void operationCancelled()

Signals that the operation was cancelled by the user. The tracer is now considered closed and should no longer be used.

operationFailed(Throwable error)

public default void operationFailed(Throwable error)

Signals that the overall operation has failed and no further attempts will be made. The tracer is now considered closed and should no longer be used.

Parameter
Name Description
error Throwable

the final error that caused the operation to fail.

operationSucceeded()

public default void operationSucceeded()

Signals that the overall operation has finished successfully. The tracer is now considered closed and should no longer be used.

requestSent()

public default void requestSent()

Adds an annotation that a streaming request has been sent.

responseReceived()

public default void responseReceived()

Adds an annotation that a streaming response has been received.