Class SdkMeterProvider

  • All Implemented Interfaces:
    io.opentelemetry.api.metrics.MeterProvider, MetricProducer

    public final class SdkMeterProvider
    extends Object
    implements io.opentelemetry.api.metrics.MeterProvider, MetricProducer
    SdkMeterProvider implementation for MeterProvider.

    This class is not intended to be used in application code and it is used only by OpenTelemetry.

    WARNING: A MetricProducer is stateful. It will only return changes since the last time it was accessed. This means that if more than one MetricExporter has a handle to this MetricProducer, the two exporters will not receive copies of the same metric data to export.

    • Method Detail

      • get

        public io.opentelemetry.sdk.metrics.SdkMeter get​(String instrumentationName)
        Specified by:
        get in interface io.opentelemetry.api.metrics.MeterProvider
      • get

        public io.opentelemetry.sdk.metrics.SdkMeter get​(String instrumentationName,
                                                         @Nullable
                                                         String instrumentationVersion)
        Specified by:
        get in interface io.opentelemetry.api.metrics.MeterProvider
      • registerView

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

        Example on how to register a view:

        
         // get a handle to the MeterSdkProvider
         SdkMeterProvider meterProvider = SdkMeterProvider.builder().build();
        
         // 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 MeterSdkProvider
         meterProvider.registerView(instrumentSelector, View.builder()
           .setAggregatorFactory(aggregatorFactory).build());