Class SegmentContextExecutors

java.lang.Object
com.amazonaws.xray.contexts.SegmentContextExecutors

public final class SegmentContextExecutors
extends java.lang.Object
Executors that will mount a segment before running a command. When switching threads, for example when instrumenting an asynchronous application, it is recommended to use one of these Executors to make sure callbacks have the trace segment available.

 DynamoDbAsyncClient client = DynamoDbAsyncClient.create();

 client.getItem(request).thenComposeAsync(response -> {
     // If we did not provide the segment context executor, this request would not be traced correctly.
     return client.getItem(request2);
 }, SegmentContextExecutors.newSegmentContextExecutor()); *
 
  • Method Summary

    Modifier and Type Method Description
    static java.util.concurrent.Executor newSegmentContextExecutor()
    Returns a new Executor which will run any tasks with the current segment mounted.
    static java.util.concurrent.Executor newSegmentContextExecutor​(@Nullable Segment segment)
    Returns a new Executor which will run any tasks with the provided Segment mounted.
    static java.util.concurrent.Executor newSegmentContextExecutor​(AWSXRayRecorder recorder, @Nullable Segment segment)
    Returns a new Executor which will run any tasks with the provided Segment mounted in the provided AWSXRayRecorder.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • newSegmentContextExecutor

      public static java.util.concurrent.Executor newSegmentContextExecutor()
      Returns a new Executor which will run any tasks with the current segment mounted.
    • newSegmentContextExecutor

      public static java.util.concurrent.Executor newSegmentContextExecutor​(@Nullable Segment segment)
      Returns a new Executor which will run any tasks with the provided Segment mounted. If segment is null, the executor is a no-op.
    • newSegmentContextExecutor

      public static java.util.concurrent.Executor newSegmentContextExecutor​(AWSXRayRecorder recorder, @Nullable Segment segment)
      Returns a new Executor which will run any tasks with the provided Segment mounted in the provided AWSXRayRecorder. If segment is null, the executor is a no-op.