@ThreadSafe public abstract class LongGauge extends Object
Example 1: Create a Gauge with default labels.
class YourClass {
private static final MetricRegistry metricRegistry = Metrics.getMetricRegistry();
List<LabelKey> labelKeys = Arrays.asList(LabelKey.create("Name", "desc"));
LongGauge gauge = metricRegistry.addLongGauge("queue_size", "Pending jobs", "1", labelKeys);
// It is recommended to keep a reference of a point for manual operations.
LongPoint defaultPoint = gauge.getDefaultTimeSeries();
void doWork() {
// Your code here.
defaultPoint.add(10);
}
}
Example 2: You can also use labels(keys and values) to track different types of metric.
class YourClass {
private static final MetricRegistry metricRegistry = Metrics.getMetricRegistry();
List<LabelKey> labelKeys = Arrays.asList(LabelKey.create("Name", "desc"));
List<LabelValue> labelValues = Arrays.asList(LabelValue.create("Inbound"));
LongGauge gauge = metricRegistry.addLongGauge("queue_size", "Pending jobs", "1", labelKeys);
// It is recommended to keep a reference of a point for manual operations.
LongPoint inboundPoint = gauge.getOrCreateTimeSeries(labelValues);
void doSomeWork() {
// Your code here.
inboundPoint.set(15);
}
}
| Modifier and Type | Class and Description |
|---|---|
static class |
LongGauge.LongPoint
The value of a single point in the Gauge.TimeSeries.
|
| Constructor and Description |
|---|
LongGauge() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
clear()
Removes all
TimeSeries from the gauge metric. |
abstract LongGauge.LongPoint |
getDefaultTimeSeries()
Returns a
LongPoint for a gauge with all labels not set, or default labels. |
abstract LongGauge.LongPoint |
getOrCreateTimeSeries(List<LabelValue> labelValues)
Creates a
TimeSeries and returns a LongPoint if the specified labelValues is not already associated with this gauge, else returns an existing LongPoint. |
abstract void |
removeTimeSeries(List<LabelValue> labelValues)
Removes the
TimeSeries from the gauge metric, if it is present. |
public abstract LongGauge.LongPoint getOrCreateTimeSeries(List<LabelValue> labelValues)
TimeSeries and returns a LongPoint if the specified labelValues is not already associated with this gauge, else returns an existing LongPoint.
It is recommended to keep a reference to the LongPoint instead of always calling this method for manual operations.
labelValues - the list of label values. The number of label values must be the same to
that of the label keys passed to MetricRegistry.addLongGauge(java.lang.String, java.lang.String, java.lang.String, java.util.List<io.opencensus.metrics.LabelKey>).LongPoint the value of single gauge.NullPointerException - if labelValues is null OR any element of labelValues is null.IllegalArgumentException - if number of labelValuess are not equal to the label
keys passed to MetricRegistry.addLongGauge(java.lang.String, java.lang.String, java.lang.String, java.util.List<io.opencensus.metrics.LabelKey>).public abstract LongGauge.LongPoint getDefaultTimeSeries()
LongPoint for a gauge with all labels not set, or default labels.LongPoint for a gauge with all labels not set, or default labels.public abstract void removeTimeSeries(List<LabelValue> labelValues)
TimeSeries from the gauge metric, if it is present. i.e. references to
previous LongPoint objects are invalid (not part of the metric).labelValues - the list of label values.NullPointerException - if labelValues is null.public abstract void clear()
TimeSeries from the gauge metric. i.e. references to all previous LongPoint objects are invalid (not part of the metric).