Class Counter
java.lang.Object
io.prometheus.metrics.core.metrics.Metric
io.prometheus.metrics.core.metrics.MetricWithFixedMetadata
io.prometheus.metrics.core.metrics.StatefulMetric<CounterDataPoint,Counter.DataPoint>
io.prometheus.metrics.core.metrics.Counter
- All Implemented Interfaces:
CounterDataPoint,DataPoint,Collector
public class Counter
extends StatefulMetric<CounterDataPoint,Counter.DataPoint>
implements CounterDataPoint
Counter metric.
Example usage:
Counter requestCount = Counter.builder()
.name("requests_total")
.help("Total number of requests")
.labelNames("path", "status")
.register();
requestCount.labelValues("/hello-world", "200").inc();
requestCount.labelValues("/hello-world", "500").inc();
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class(package private) static class -
Field Summary
FieldsFields inherited from class io.prometheus.metrics.core.metrics.MetricWithFixedMetadata
labelNamesFields inherited from class io.prometheus.metrics.core.metrics.Metric
constLabels -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateCounter(Counter.Builder builder, PrometheusProperties prometheusProperties) -
Method Summary
Modifier and TypeMethodDescriptionstatic Counter.Builderbuilder()static Counter.Builderbuilder(PrometheusProperties config) collect()Called when the Prometheus server scrapes metrics.protected CounterSnapshotcollect(List<Labels> labels, List<Counter.DataPoint> metricData) labels and metricData have the same size.doubleget()Get the current value.longGet the current value as along.Returns the metric type for registration-time validation.voidinc(double amount) Addamount.voidinc(long amount) Addamount.voidincWithExemplar(double amount, Labels labels) Addamount, and create a custom exemplar with the given labels.voidincWithExemplar(long amount, Labels labels) Addamount, and create a custom exemplar with the given labels.protected Counter.DataPoint(package private) static StringstripTotalSuffix(String name) Methods inherited from class io.prometheus.metrics.core.metrics.StatefulMetric
clear, getConfigProperty, getMetricProperties, getNoLabels, initLabelValues, labelValues, remove, removeIfMethods inherited from class io.prometheus.metrics.core.metrics.MetricWithFixedMetadata
getLabelNames, getMetadata, getPrometheusNameMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.prometheus.metrics.model.registry.Collector
collect, collect, collectMethods inherited from interface io.prometheus.metrics.core.datapoints.CounterDataPoint
inc, incWithExemplar
-
Field Details
-
exemplarSamplerConfig
-
-
Constructor Details
-
Counter
-
-
Method Details
-
inc
public void inc(long amount) Description copied from interface:CounterDataPoint- Specified by:
incin interfaceCounterDataPoint
-
inc
public void inc(double amount) Description copied from interface:CounterDataPoint- Specified by:
incin interfaceCounterDataPoint
-
incWithExemplar
Description copied from interface:CounterDataPointAddamount, and create a custom exemplar with the given labels. Throws anIllegalArgumentExceptionifamountis negative.- Specified by:
incWithExemplarin interfaceCounterDataPoint
-
incWithExemplar
Description copied from interface:CounterDataPointAddamount, and create a custom exemplar with the given labels. Throws anIllegalArgumentExceptionifamountis negative.- Specified by:
incWithExemplarin interfaceCounterDataPoint
-
get
public double get()Description copied from interface:CounterDataPointGet the current value.- Specified by:
getin interfaceCounterDataPoint
-
getLongValue
public long getLongValue()Description copied from interface:CounterDataPointGet the current value as along. Decimal places will be discarded.- Specified by:
getLongValuein interfaceCounterDataPoint
-
collect
Description copied from interface:CollectorCalled when the Prometheus server scrapes metrics.- Specified by:
collectin interfaceCollector- Overrides:
collectin classStatefulMetric<CounterDataPoint,Counter.DataPoint>
-
collect
Description copied from class:StatefulMetriclabels and metricData have the same size. labels.get(i) are the labels for metricData.get(i).- Specified by:
collectin classStatefulMetric<CounterDataPoint,Counter.DataPoint>
-
getMetricType
Description copied from interface:CollectorReturns the metric type for registration-time validation.This is used to prevent different metric types (e.g., Counter and Gauge) from sharing the same name. Returning
nullmeans type validation is skipped for this collector.Validation is performed only at registration time. If this method returns
null, no type validation is performed for this collector, and duplicate or conflicting metrics may result in invalid exposition output.- Specified by:
getMetricTypein interfaceCollector- Returns:
- the metric type, or
nullto skip validation
-
newDataPoint
- Specified by:
newDataPointin classStatefulMetric<CounterDataPoint,Counter.DataPoint>
-
stripTotalSuffix
-
builder
-
builder
-