Package io.opentelemetry.sdk.metrics
Class SdkDoubleHistogram
- java.lang.Object
-
- io.opentelemetry.sdk.metrics.AbstractInstrument
-
- io.opentelemetry.sdk.metrics.SdkDoubleHistogram
-
- All Implemented Interfaces:
ExtendedDoubleHistogram
,DoubleHistogram
final class SdkDoubleHistogram extends AbstractInstrument implements ExtendedDoubleHistogram
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
SdkDoubleHistogram.SdkDoubleHistogramBuilder
-
Field Summary
Fields Modifier and Type Field Description private static java.util.logging.Logger
logger
private SdkMeter
sdkMeter
private WriteableMetricStorage
storage
private ThrottlingLogger
throttlingLogger
-
Constructor Summary
Constructors Modifier Constructor Description private
SdkDoubleHistogram(InstrumentDescriptor descriptor, SdkMeter sdkMeter, WriteableMetricStorage storage)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
isEnabled()
Returnstrue
if the histogram is enabled.void
record(double value)
Records a value.void
record(double value, Attributes attributes)
Records a value with a set of attributes.void
record(double value, Attributes attributes, Context context)
Records a value with a set of attributes.-
Methods inherited from class io.opentelemetry.sdk.metrics.AbstractInstrument
equals, getDescriptor, hashCode, toString
-
-
-
-
Field Detail
-
logger
private static final java.util.logging.Logger logger
-
throttlingLogger
private final ThrottlingLogger throttlingLogger
-
sdkMeter
private final SdkMeter sdkMeter
-
storage
private final WriteableMetricStorage storage
-
-
Constructor Detail
-
SdkDoubleHistogram
private SdkDoubleHistogram(InstrumentDescriptor descriptor, SdkMeter sdkMeter, WriteableMetricStorage storage)
-
-
Method Detail
-
record
public void record(double value, Attributes attributes, Context context)
Description copied from interface:DoubleHistogram
Records a value with a set of attributes.- Specified by:
record
in interfaceDoubleHistogram
- Parameters:
value
- The amount of the measurement. MUST be non-negative.attributes
- A set of attributes to associate with the value.context
- The explicit context to associate with this measurement.
-
record
public void record(double value, Attributes attributes)
Description copied from interface:DoubleHistogram
Records a value with a set of attributes.Note: This may use
Context.current()
to pull the context associated with this measurement.- Specified by:
record
in interfaceDoubleHistogram
- Parameters:
value
- The amount of the measurement. MUST be non-negative.attributes
- A set of attributes to associate with the value.
-
record
public void record(double value)
Description copied from interface:DoubleHistogram
Records a value.Note: This may use
Context.current()
to pull the context associated with this measurement.- Specified by:
record
in interfaceDoubleHistogram
- Parameters:
value
- The amount of the measurement. MUST be non-negative.
-
isEnabled
public boolean isEnabled()
Description copied from interface:ExtendedDoubleHistogram
Returnstrue
if the histogram is enabled.This allows callers to avoid unnecessary compute when nothing is consuming the data. Because the response is subject to change over the application, callers should call this before each call to
DoubleHistogram.record(double)
,DoubleHistogram.record(double, Attributes)
, orDoubleHistogram.record(double, Attributes, Context)
.- Specified by:
isEnabled
in interfaceExtendedDoubleHistogram
-
-