Package io.opentelemetry.sdk.metrics
Class ViewBuilder
- java.lang.Object
-
- io.opentelemetry.sdk.metrics.ViewBuilder
-
public final class ViewBuilder extends java.lang.Object
A builder forView
.- Since:
- 1.14.0
-
-
Field Summary
Fields Modifier and Type Field Description private Aggregation
aggregation
private int
cardinalityLimit
private java.lang.String
description
private java.lang.String
name
private AttributesProcessor
processor
-
Constructor Summary
Constructors Constructor Description ViewBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) ViewBuilder
addAttributesProcessor(AttributesProcessor attributesProcessor)
Add an attribute processor.View
build()
Returns aView
with the configuration of this builder.ViewBuilder
setAggregation(Aggregation aggregation)
SetsAggregation
.ViewBuilder
setAttributeFilter(java.util.function.Predicate<java.lang.String> keyFilter)
Sets a filter for attributes keys.ViewBuilder
setAttributeFilter(java.util.Set<java.lang.String> keysToRetain)
Sets a filter which retains attribute keys included inkeysToRetain
.ViewBuilder
setCardinalityLimit(int cardinalityLimit)
Set the cardinality limit.ViewBuilder
setDescription(java.lang.String description)
Sets the description of the resulting metric.ViewBuilder
setName(java.lang.String name)
Sets the name of the resulting metric.
-
-
-
Field Detail
-
name
@Nullable private java.lang.String name
-
description
@Nullable private java.lang.String description
-
aggregation
private Aggregation aggregation
-
processor
private AttributesProcessor processor
-
cardinalityLimit
private int cardinalityLimit
-
-
Method Detail
-
setName
public ViewBuilder setName(java.lang.String name)
Sets the name of the resulting metric.- Parameters:
name
- metric name ornull
if the matched instrument name should be used.
-
setDescription
public ViewBuilder setDescription(java.lang.String description)
Sets the description of the resulting metric.- Parameters:
description
- metric description ornull
if the matched instrument description should be used.
-
setAggregation
public ViewBuilder setAggregation(Aggregation aggregation)
SetsAggregation
.- Parameters:
aggregation
- aggregation to use.
-
setAttributeFilter
public ViewBuilder setAttributeFilter(java.util.Set<java.lang.String> keysToRetain)
Sets a filter which retains attribute keys included inkeysToRetain
.- Since:
- 1.30.0
-
setAttributeFilter
public ViewBuilder setAttributeFilter(java.util.function.Predicate<java.lang.String> keyFilter)
Sets a filter for attributes keys.Only attribute keys that pass the supplied
Predicate
will be included in the output.- Parameters:
keyFilter
- filter for attribute keys to include.
-
addAttributesProcessor
ViewBuilder addAttributesProcessor(AttributesProcessor attributesProcessor)
Add an attribute processor.This method is experimental so not public. You may reflectively call it using
SdkMeterProviderUtil.appendFilteredBaggageAttributes(ViewBuilder, Predicate)
,SdkMeterProviderUtil.appendAllBaggageAttributes(ViewBuilder)
.Note: not currently stable but additional attribute processors can be configured via
SdkMeterProviderUtil.appendAllBaggageAttributes(ViewBuilder)
.
-
setCardinalityLimit
public ViewBuilder setCardinalityLimit(int cardinalityLimit)
Set the cardinality limit.Read
MemoryMode
to understand the memory usage behavior of reaching cardinality limit.- Parameters:
cardinalityLimit
- the maximum number of series for a metric- Since:
- 1.44.0
-
-