Class SdkMeterProviderBuilder


  • public final class SdkMeterProviderBuilder
    extends Object
    Builder class for the SdkMeterProvider. Has fully functional default implementations of all three required interfaces.
    • Method Detail

      • setClock

        public SdkMeterProviderBuilder setClock​(io.opentelemetry.sdk.common.Clock clock)
        Assign a Clock.
        Parameters:
        clock - The clock to use for all temporal needs.
        Returns:
        this
      • setResource

        public SdkMeterProviderBuilder setResource​(io.opentelemetry.sdk.resources.Resource resource)
        Assign a Resource to be attached to all Spans created by Tracers.
        Parameters:
        resource - A Resource implementation.
        Returns:
        this
      • registerView

        public SdkMeterProviderBuilder registerView​(InstrumentSelector selector,
                                                    View view)
        Register a view with the given InstrumentSelector.

        Example on how to register a view:

        
         // create a SdkMeterProviderBuilder
         SdkMeterProviderBuilder meterProviderBuilder = SdkMeterProvider.builder();
        
         // create a selector to select which instruments to customize:
         InstrumentSelector instrumentSelector = InstrumentSelector.builder()
           .setInstrumentType(InstrumentType.COUNTER)
           .build();
        
         // create a specification of how you want the metrics aggregated:
         AggregatorFactory aggregatorFactory = AggregatorFactory.minMaxSumCount();
        
         // register the view with the SdkMeterProviderBuilder
         meterProviderBuilder.registerView(instrumentSelector, View.builder()
           .setAggregatorFactory(aggregatorFactory).build());
         
        Since:
        1.1.0
      • build

        public SdkMeterProvider build()
        Returns a new SdkMeterProvider built with the configuration of this SdkMeterProviderBuilder. This provider is not registered as the global MeterProvider. It is recommended that you register one provider using buildAndRegisterGlobal() for use by instrumentation when that requires access to a global instance of MeterProvider.
        See Also:
        GlobalMeterProvider