Class AutoConfiguredOpenTelemetrySdkBuilder

java.lang.Object
io.opentelemetry.sdk.autoconfigure.AutoConfiguredOpenTelemetrySdkBuilder
All Implemented Interfaces:
io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer

public final class AutoConfiguredOpenTelemetrySdkBuilder extends Object implements io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
A builder for configuring auto-configuration of the OpenTelemetry SDK. Notably, auto-configured components can be customized, for example by delegating to them from a wrapper that tweaks behavior such as filtering out telemetry attributes.
  • Method Details

    • addPropagatorCustomizer

      public AutoConfiguredOpenTelemetrySdkBuilder addPropagatorCustomizer(BiFunction<? super io.opentelemetry.context.propagation.TextMapPropagator,io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties,? extends io.opentelemetry.context.propagation.TextMapPropagator> propagatorCustomizer)
      Adds a BiFunction to invoke with the default autoconfigured TextMapPropagator to allow customization. The return value of the BiFunction will replace the passed-in argument.

      Multiple calls will execute the customizers in order.

      Specified by:
      addPropagatorCustomizer in interface io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
    • addResourceCustomizer

      public AutoConfiguredOpenTelemetrySdkBuilder addResourceCustomizer(BiFunction<? super io.opentelemetry.sdk.resources.Resource,io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties,? extends io.opentelemetry.sdk.resources.Resource> resourceCustomizer)
      Adds a BiFunction to invoke with the default autoconfigured Resource to allow customization. The return value of the BiFunction will replace the passed-in argument.

      Multiple calls will execute the customizers in order.

      Specified by:
      addResourceCustomizer in interface io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
    • addSamplerCustomizer

      public AutoConfiguredOpenTelemetrySdkBuilder addSamplerCustomizer(BiFunction<? super io.opentelemetry.sdk.trace.samplers.Sampler,io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties,? extends io.opentelemetry.sdk.trace.samplers.Sampler> samplerCustomizer)
      Adds a BiFunction to invoke with the default autoconfigured Sampler to allow customization. The return value of the BiFunction will replace the passed-in argument.

      Multiple calls will execute the customizers in order.

      Specified by:
      addSamplerCustomizer in interface io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
    • addSpanExporterCustomizer

      public AutoConfiguredOpenTelemetrySdkBuilder addSpanExporterCustomizer(BiFunction<? super io.opentelemetry.sdk.trace.export.SpanExporter,io.opentelemetry.sdk.autoconfigure.spi.ConfigProperties,? extends io.opentelemetry.sdk.trace.export.SpanExporter> spanExporterCustomizer)
      Adds a BiFunction to invoke with the default autoconfigured SpanExporter to allow customization. The return value of the BiFunction will replace the passed-in argument.

      Multiple calls will execute the customizers in order.

      Specified by:
      addSpanExporterCustomizer in interface io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
    • addPropertiesSupplier

      public AutoConfiguredOpenTelemetrySdkBuilder addPropertiesSupplier(Supplier<Map<String,String>> propertiesSupplier)
      Adds a Supplier of a map of property names and values to use as defaults for the ConfigProperties used during auto-configuration. The order of precedence of properties is system properties > environment variables > the suppliers registered with this method.

      Multiple calls will cause properties to be merged in order, with later ones overwriting duplicate keys in earlier ones.

      Specified by:
      addPropertiesSupplier in interface io.opentelemetry.sdk.autoconfigure.spi.AutoConfigurationCustomizer
    • setResultAsGlobal

      public AutoConfiguredOpenTelemetrySdkBuilder setResultAsGlobal(boolean setResultAsGlobal)
      Sets whether the configured OpenTelemetrySdk should be set as the application's global instance.
    • setServiceClassLoader

      public AutoConfiguredOpenTelemetrySdkBuilder setServiceClassLoader(ClassLoader serviceClassLoader)
      Sets the ClassLoader to be used to load SPI implementations.
    • build

      Returns a new AutoConfiguredOpenTelemetrySdk holding components auto-configured using the settings of this AutoConfiguredOpenTelemetrySdkBuilder.