Class SdkMeterProviderBuilder
SdkMeterProvider.- Since:
- 1.14.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Clockprivate static final ExemplarFilterBy default, the exemplar filter is set to sample with traces.private ExemplarFilterprivate ScopeConfiguratorBuilder<MeterConfig> private final List<MetricProducer> private final IdentityHashMap<MetricReader, CardinalityLimitSelector> private final List<RegisteredView> private Resource -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) SdkMeterProviderBuilderaddMeterConfiguratorCondition(Predicate<InstrumentationScopeInfo> scopeMatcher, MeterConfig meterConfig) Adds a condition to the meter configurator, which computesMeterConfigfor eachInstrumentationScopeInfo.addResource(Resource resource) Merge aResourcewith the current.build()Returns anSdkMeterProviderbuilt with the configuration of this builder.registerMetricProducer(MetricProducer metricProducer) Registers aMetricProducer.registerMetricReader(MetricReader reader) Registers aMetricReader.registerMetricReader(MetricReader reader, CardinalityLimitSelector cardinalityLimitSelector) Registers aMetricReaderwith aCardinalityLimitSelector.registerView(InstrumentSelector selector, View view) Register aView.Assign aClock.(package private) SdkMeterProviderBuildersetExemplarFilter(ExemplarFilter filter) Assign anExemplarFilterfor all metrics created by Meters.(package private) SdkMeterProviderBuildersetMeterConfigurator(ScopeConfigurator<MeterConfig> meterConfigurator) Set the meter configurator, which computesMeterConfigfor eachInstrumentationScopeInfo.setResource(Resource resource) Assign aResourceto be attached to all metrics.
-
Field Details
-
DEFAULT_EXEMPLAR_FILTER
By default, the exemplar filter is set to sample with traces.- See Also:
-
clock
-
resource
-
metricReaders
-
metricProducers
-
registeredViews
-
exemplarFilter
-
meterConfiguratorBuilder
-
-
Constructor Details
-
SdkMeterProviderBuilder
SdkMeterProviderBuilder()
-
-
Method Details
-
setClock
Assign aClock.- Parameters:
clock- The clock to use for all temporal needs.
-
setResource
Assign aResourceto be attached to all metrics. -
addResource
-
setExemplarFilter
Assign anExemplarFilterfor all metrics created by Meters.This method is experimental so not public. You may reflectively call it using
SdkMeterProviderUtil.setExemplarFilter(SdkMeterProviderBuilder, ExemplarFilter). -
registerView
Register aView.The
viewinfluences how instruments which match theselectorare aggregated and exported.For example, the following code registers a view which changes all histogram instruments to aggregate with bucket boundaries different from the default:
// create a SdkMeterProviderBuilder SdkMeterProviderBuilder meterProviderBuilder = SdkMeterProvider.builder(); // register the view with the SdkMeterProviderBuilder meterProviderBuilder.registerView( InstrumentSelector.builder() .setType(InstrumentType.HISTOGRAM) .build(), View.builder() .setAggregation( Aggregation.explicitBucketHistogram(Arrays.asList(10d, 20d, 30d, 40d, 50d))) .build()); -
registerMetricReader
Registers aMetricReader. -
registerMetricReader
public SdkMeterProviderBuilder registerMetricReader(MetricReader reader, CardinalityLimitSelector cardinalityLimitSelector) Registers aMetricReaderwith aCardinalityLimitSelector.If
registerMetricReader(MetricReader)is used, theCardinalityLimitSelector.defaultCardinalityLimitSelector()is used.- Since:
- 1.44.0
-
registerMetricProducer
Registers aMetricProducer.- Since:
- 1.31.0
-
setMeterConfigurator
Set the meter configurator, which computesMeterConfigfor eachInstrumentationScopeInfo.This method is experimental so not public. You may reflectively call it using
SdkMeterProviderUtil.setMeterConfigurator(SdkMeterProviderBuilder, ScopeConfigurator).Overrides any matchers added via
addMeterConfiguratorCondition(Predicate, MeterConfig).- See Also:
-
addMeterConfiguratorCondition
SdkMeterProviderBuilder addMeterConfiguratorCondition(Predicate<InstrumentationScopeInfo> scopeMatcher, MeterConfig meterConfig) Adds a condition to the meter configurator, which computesMeterConfigfor eachInstrumentationScopeInfo.This method is experimental so not public. You may reflectively call it using
SdkMeterProviderUtil.addMeterConfiguratorCondition(SdkMeterProviderBuilder, Predicate, MeterConfig).Applies after any previously added conditions.
If
setMeterConfigurator(ScopeConfigurator)was previously called, this condition will only be applied if theFunction.apply(Object)returns null for the matchedInstrumentationScopeInfo(s).- See Also:
-
build
Returns anSdkMeterProviderbuilt with the configuration of this builder.
-