Class OpenTelemetryMetricsConfig.BuilderBase<BUILDER extends OpenTelemetryMetricsConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends OpenTelemetryMetricsConfig>

java.lang.Object
io.helidon.telemetry.otelconfig.OpenTelemetryMetricsConfig.BuilderBase<BUILDER,PROTOTYPE>
Type Parameters:
BUILDER - type of the builder extending this abstract builder
PROTOTYPE - type of the prototype interface that would be built by Prototype.Builder.buildPrototype()
All Implemented Interfaces:
Prototype.Builder<BUILDER,PROTOTYPE>, ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>, ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Direct Known Subclasses:
OpenTelemetryMetricsConfig.Builder
Enclosing interface:
OpenTelemetryMetricsConfig

public abstract static class OpenTelemetryMetricsConfig.BuilderBase<BUILDER extends OpenTelemetryMetricsConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends OpenTelemetryMetricsConfig> extends Object implements ConfigBuilderSupport.ConfiguredBuilder<BUILDER,PROTOTYPE>
Fluent API builder base for OpenTelemetryMetricsConfig.
  • Constructor Details

    • BuilderBase

      protected BuilderBase()
      Protected to support extensibility.
  • Method Details

    • from

      public BUILDER from(OpenTelemetryMetricsConfig prototype)
      Update this builder from an existing prototype instance. This method disables automatic service discovery.
      Parameters:
      prototype - existing prototype to update this builder from
      Returns:
      updated builder instance
    • from

      public BUILDER from(OpenTelemetryMetricsConfig.BuilderBase<?,?> builder)
      Update this builder from an existing prototype builder instance.
      Parameters:
      builder - existing builder prototype to update this builder from
      Returns:
      updated builder instance
    • registerView

      public BUILDER registerView(io.opentelemetry.sdk.metrics.InstrumentSelector instrumentSelector, io.opentelemetry.sdk.metrics.View view)
      Convenience method so developers can add OpenTelemetry metric views to the builder--using the "registerView" method familiar from the OpenTelemetry API--which Helidon then adds to OpenTelemetry.
      Parameters:
      instrumentSelector - OpenTelemetry InstrumentSelector for the view
      view - OpenTelemetry View for the view
      Returns:
      updated builder instance
    • registerMetricReader

      public BUILDER registerMetricReader(io.opentelemetry.sdk.metrics.export.MetricReader metricReader)
      Convenience method so developers can add OpenTelemetry metric readers to the builder--using the "register" method familiar from the OpenTelemetry API--which Helidon then adds to OpenTelemetry.
      Parameters:
      metricReader - OpenTelemetry MetricReader to register
      Returns:
      updated builder instance
    • config

      @Deprecated public BUILDER config(Config config)
      Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.
      Specified by:
      config in interface ConfigBuilderSupport.ConfiguredBuilder<BUILDER extends OpenTelemetryMetricsConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends OpenTelemetryMetricsConfig>
      Parameters:
      config - configuration instance used to obtain values to update this builder
      Returns:
      updated builder instance
    • config

      public BUILDER config(Config config)
      Update builder from configuration (node of this type). If a value is present in configuration, it would override currently configured values.
      Specified by:
      config in interface ConfigBuilderSupport.ConfiguredBuilder<BUILDER extends OpenTelemetryMetricsConfig.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends OpenTelemetryMetricsConfig>
      Parameters:
      config - configuration instance used to obtain values to update this builder
      Returns:
      updated builder instance
    • clearReaders

      public BUILDER clearReaders()
      Clear all readers.
      Returns:
      updated builder instance
      See Also:
    • readers

      public BUILDER readers(List<? extends io.opentelemetry.sdk.metrics.export.MetricReader> readers)
      Constructed metric readers.
      Parameters:
      readers - metric readers
      Returns:
      updated builder instance
      See Also:
    • addReaders

      public BUILDER addReaders(List<? extends io.opentelemetry.sdk.metrics.export.MetricReader> readers)
      Constructed metric readers.
      Parameters:
      readers - metric readers
      Returns:
      updated builder instance
      See Also:
    • addReader

      public BUILDER addReader(io.opentelemetry.sdk.metrics.export.MetricReader reader)
      Constructed metric readers.
      Parameters:
      reader - add single metric readers
      Returns:
      updated builder instance
      See Also:
    • exporters

      public BUILDER exporters(Map<String,? extends io.opentelemetry.sdk.metrics.export.MetricExporter> exporters)
      Metric exporter configurations, configurable using MetricExporterConfig. This method replaces all values with the new ones.
      Parameters:
      exporters - metric exporters
      Returns:
      updated builder instance
      See Also:
    • addExporters

      public BUILDER addExporters(Map<String,? extends io.opentelemetry.sdk.metrics.export.MetricExporter> exporters)
      Metric exporter configurations, configurable using MetricExporterConfig. This method keeps existing values, then puts all new values into the map.
      Parameters:
      exporters - metric exporters
      Returns:
      updated builder instance
      See Also:
    • putExporter

      public BUILDER putExporter(String key, io.opentelemetry.sdk.metrics.export.MetricExporter exporter)
      Metric exporter configurations, configurable using MetricExporterConfig. This method adds a new value to the map, or replaces it if the key already exists.
      Parameters:
      key - key to add or replace
      exporter - new value for the key
      Returns:
      updated builder instance
      See Also:
    • clearAttributes

      public BUILDER clearAttributes()
      Clear existing value of attributes.
      Returns:
      updated builder instance
      See Also:
    • attributes

      public BUILDER attributes(io.opentelemetry.api.common.AttributesBuilder attributes)
      Name/value pairs passed to OpenTelemetry.
      Parameters:
      attributes - typed attribute settings
      Returns:
      updated builder instance
      See Also:
    • readers

      public List<io.opentelemetry.sdk.metrics.export.MetricReader> readers()
      Constructed metric readers.
      Returns:
      metric readers
    • exporters

      public Map<String,io.opentelemetry.sdk.metrics.export.MetricExporter> exporters()
      Metric exporter configurations, configurable using MetricExporterConfig.
      Returns:
      metric exporters
    • attributes

      public Optional<io.opentelemetry.api.common.AttributesBuilder> attributes()
      Name/value pairs passed to OpenTelemetry.
      Returns:
      typed attribute settings
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • preBuildPrototype

      protected void preBuildPrototype()
      Handles providers and decorators.
    • validatePrototype

      protected void validatePrototype()
      Validates required properties.
    • config

      protected Optional<Config> config()
      Configuration used to configure this instance.
      Returns:
      config instance