@InterfaceAudience.Private public final class TraceUtil extends Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
TraceUtil.ThrowingCallable<R,T extends Throwable>
A
Callable that may also throw. |
static interface |
TraceUtil.ThrowingRunnable<T extends Throwable>
A
Runnable that may also throw. |
| Modifier and Type | Method and Description |
|---|---|
static io.opentelemetry.api.trace.Span |
createClientSpan(String name)
Create a span with
SpanKind.CLIENT. |
static io.opentelemetry.api.trace.Span |
createRemoteSpan(String name,
io.opentelemetry.context.Context ctx)
Create a span which parent is from remote, i.e, passed through rpc.
|
static io.opentelemetry.api.trace.Span |
createSpan(String name)
Create a
SpanKind.INTERNAL span. |
static io.opentelemetry.api.trace.Tracer |
getGlobalTracer() |
static void |
setError(io.opentelemetry.api.trace.Span span,
Throwable error) |
static <R,T extends Throwable> |
trace(TraceUtil.ThrowingCallable<R,T> callable,
String spanName) |
static <R,T extends Throwable> |
trace(TraceUtil.ThrowingCallable<R,T> callable,
Supplier<io.opentelemetry.api.trace.Span> spanSupplier) |
static <T extends Throwable> |
trace(TraceUtil.ThrowingRunnable<T> runnable,
String spanName)
Trace the execution of
runnable. |
static <T extends Throwable> |
trace(TraceUtil.ThrowingRunnable<T> runnable,
Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
Trace the execution of
runnable. |
static <T> CompletableFuture<T> |
tracedFuture(Supplier<CompletableFuture<T>> action,
String spanName)
Trace an asynchronous operation.
|
static <T> CompletableFuture<T> |
tracedFuture(Supplier<CompletableFuture<T>> action,
Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
Trace an asynchronous operation for a table.
|
static <T> List<CompletableFuture<T>> |
tracedFutures(Supplier<List<CompletableFuture<T>>> action,
Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
Trace an asynchronous operation, and finish the create
Span when all the given
futures are completed. |
static Runnable |
tracedRunnable(Runnable runnable,
String spanName)
Wrap the provided
runnable in a Runnable that is traced. |
static Runnable |
tracedRunnable(Runnable runnable,
Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
Wrap the provided
runnable in a Runnable that is traced. |
public static io.opentelemetry.api.trace.Tracer getGlobalTracer()
public static io.opentelemetry.api.trace.Span createSpan(String name)
SpanKind.INTERNAL span.public static io.opentelemetry.api.trace.Span createRemoteSpan(String name, io.opentelemetry.context.Context ctx)
SpanKind.SERVER, as this should be the top
most span at server side.public static io.opentelemetry.api.trace.Span createClientSpan(String name)
SpanKind.CLIENT.public static <T> CompletableFuture<T> tracedFuture(Supplier<CompletableFuture<T>> action, Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
public static <T> CompletableFuture<T> tracedFuture(Supplier<CompletableFuture<T>> action, String spanName)
public static <T> List<CompletableFuture<T>> tracedFutures(Supplier<List<CompletableFuture<T>>> action, Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
Span when all the given
futures are completed.public static void setError(io.opentelemetry.api.trace.Span span,
Throwable error)
public static Runnable tracedRunnable(Runnable runnable, String spanName)
runnable in a Runnable that is traced.public static Runnable tracedRunnable(Runnable runnable, Supplier<io.opentelemetry.api.trace.Span> spanSupplier)
runnable in a Runnable that is traced.public static <T extends Throwable> void trace(TraceUtil.ThrowingRunnable<T> runnable, String spanName) throws T extends Throwable
runnable.T extends Throwablepublic static <T extends Throwable> void trace(TraceUtil.ThrowingRunnable<T> runnable, Supplier<io.opentelemetry.api.trace.Span> spanSupplier) throws T extends Throwable
runnable.T extends Throwablepublic static <R,T extends Throwable> R trace(TraceUtil.ThrowingCallable<R,T> callable, String spanName) throws T extends Throwable
T extends Throwablepublic static <R,T extends Throwable> R trace(TraceUtil.ThrowingCallable<R,T> callable, Supplier<io.opentelemetry.api.trace.Span> spanSupplier) throws T extends Throwable
T extends ThrowableCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.