Class SdkMeterProviderBuilder
SdkMeterProvider
.- Since:
- 1.14.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Clock
private static final ExemplarFilter
By default, the exemplar filter is set to sample with traces.private ExemplarFilter
private 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) SdkMeterProviderBuilder
addMeterConfiguratorCondition
(Predicate<InstrumentationScopeInfo> scopeMatcher, MeterConfig meterConfig) Adds a condition to the meter configurator, which computesMeterConfig
for eachInstrumentationScopeInfo
.addResource
(Resource resource) Merge aResource
with the current.build()
Returns anSdkMeterProvider
built with the configuration of this builder.registerMetricProducer
(MetricProducer metricProducer) Registers aMetricProducer
.registerMetricReader
(MetricReader reader) Registers aMetricReader
.registerMetricReader
(MetricReader reader, CardinalityLimitSelector cardinalityLimitSelector) Registers aMetricReader
with aCardinalityLimitSelector
.registerView
(InstrumentSelector selector, View view) Register aView
.Assign aClock
.(package private) SdkMeterProviderBuilder
setExemplarFilter
(ExemplarFilter filter) Assign anExemplarFilter
for all metrics created by Meters.(package private) SdkMeterProviderBuilder
setMeterConfigurator
(ScopeConfigurator<MeterConfig> meterConfigurator) Set the meter configurator, which computesMeterConfig
for eachInstrumentationScopeInfo
.setResource
(Resource resource) Assign aResource
to 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 aResource
to be attached to all metrics. -
addResource
Merge aResource
with the current.- Parameters:
resource
-Resource
to merge with current.- Since:
- 1.29.0
-
setExemplarFilter
Assign anExemplarFilter
for 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
view
influences how instruments which match theselector
are 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 aMetricReader
with 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 computesMeterConfig
for 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 computesMeterConfig
for 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 anSdkMeterProvider
built with the configuration of this builder.
-