Class TracingExecutionInterceptor

java.lang.Object
io.opentelemetry.instrumentation.awssdk.v2_2.internal.TracingExecutionInterceptor
All Implemented Interfaces:
software.amazon.awssdk.core.interceptor.ExecutionInterceptor

public final class TracingExecutionInterceptor extends Object implements software.amazon.awssdk.core.interceptor.ExecutionInterceptor
AWS request execution interceptor.

This class is internal and is hence not for public use. Its APIs are unstable and can change at any time.

  • Constructor Summary

    Constructors
    Constructor
    Description
    TracingExecutionInterceptor(io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<software.amazon.awssdk.core.interceptor.ExecutionAttributes,Response> requestInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<SqsReceiveRequest,Response> consumerReceiveInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<SqsProcessRequest,Response> consumerProcessInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<software.amazon.awssdk.core.interceptor.ExecutionAttributes,Response> producerInstrumenter, boolean captureExperimentalSpanAttributes, io.opentelemetry.context.propagation.TextMapPropagator messagingPropagator, boolean useXrayPropagator, boolean recordIndividualHttpError)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    afterExecution(software.amazon.awssdk.core.interceptor.Context.AfterExecution context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     
    void
    beforeTransmission(software.amazon.awssdk.core.interceptor.Context.BeforeTransmission context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     
    software.amazon.awssdk.http.SdkHttpRequest
    modifyHttpRequest(software.amazon.awssdk.core.interceptor.Context.ModifyHttpRequest context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     
    modifyHttpResponseContent(software.amazon.awssdk.core.interceptor.Context.ModifyHttpResponse context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     
    software.amazon.awssdk.core.SdkRequest
    modifyRequest(software.amazon.awssdk.core.interceptor.Context.ModifyRequest context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     
    void
    onExecutionFailure(software.amazon.awssdk.core.interceptor.Context.FailedExecution context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor

    afterMarshalling, afterTransmission, afterUnmarshalling, beforeExecution, beforeMarshalling, beforeUnmarshalling, modifyAsyncHttpContent, modifyAsyncHttpResponseContent, modifyException, modifyHttpContent, modifyHttpResponse, modifyResponse
  • Constructor Details

    • TracingExecutionInterceptor

      public TracingExecutionInterceptor(io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<software.amazon.awssdk.core.interceptor.ExecutionAttributes,Response> requestInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<SqsReceiveRequest,Response> consumerReceiveInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<SqsProcessRequest,Response> consumerProcessInstrumenter, io.opentelemetry.instrumentation.api.instrumenter.Instrumenter<software.amazon.awssdk.core.interceptor.ExecutionAttributes,Response> producerInstrumenter, boolean captureExperimentalSpanAttributes, io.opentelemetry.context.propagation.TextMapPropagator messagingPropagator, boolean useXrayPropagator, boolean recordIndividualHttpError)
  • Method Details

    • modifyRequest

      public software.amazon.awssdk.core.SdkRequest modifyRequest(software.amazon.awssdk.core.interceptor.Context.ModifyRequest context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      modifyRequest in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor
    • beforeTransmission

      public void beforeTransmission(software.amazon.awssdk.core.interceptor.Context.BeforeTransmission context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      beforeTransmission in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor
    • modifyHttpRequest

      public software.amazon.awssdk.http.SdkHttpRequest modifyHttpRequest(software.amazon.awssdk.core.interceptor.Context.ModifyHttpRequest context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      modifyHttpRequest in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor
    • modifyHttpResponseContent

      public Optional<InputStream> modifyHttpResponseContent(software.amazon.awssdk.core.interceptor.Context.ModifyHttpResponse context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      modifyHttpResponseContent in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor
    • afterExecution

      public void afterExecution(software.amazon.awssdk.core.interceptor.Context.AfterExecution context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      afterExecution in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor
    • onExecutionFailure

      public void onExecutionFailure(software.amazon.awssdk.core.interceptor.Context.FailedExecution context, software.amazon.awssdk.core.interceptor.ExecutionAttributes executionAttributes)
      Specified by:
      onExecutionFailure in interface software.amazon.awssdk.core.interceptor.ExecutionInterceptor