a base StatsReceiver, used for metrics that aren't denylisted
a predicate that reads a name and returns true to denylist, and false to let it pass through
Add the function f
as a gauge with the given name.
Add the function f
as a gauge with the given name.
The returned gauge value is only weakly referenced by the StatsReceiver, and if garbage collected will eventually cease to be a part of this measurement: thus, it needs to be retained by the caller. Or put another way, the measurement is only guaranteed to exist as long as there exists a strong reference to the returned gauge and typically should be stored in a member variable.
Measurements under the same name are added together.
StatsReceiver.provideGauge when there is not a good location to store the returned gauge that can give the desired lifecycle.
Just like addGauge(Verbosity,String*,=>Float) but optimized for better Java experience.
Just like addGauge(Verbosity,String*,=>Float) but optimized for better Java experience.
Just like addGauge(String*,=>Float) but optimized for better Java experience.
Just like addGauge(String*,=>Float) but optimized for better Java experience.
Add the function f
as a gauge with the given name.
Add the function f
as a gauge with the given name.
The returned gauge value is only weakly referenced by the StatsReceiver, and if garbage collected will eventually cease to be a part of this measurement: thus, it needs to be retained by the caller. Or put another way, the measurement is only guaranteed to exist as long as there exists a strong reference to the returned gauge and typically should be stored in a member variable.
Measurements under the same name are added together.
StatsReceiver.addGauge(java.util.function.Supplier,Verbosity,String*) for a Java-friendly version.
StatsReceiver.provideGauge when there is not a good location to store the returned gauge that can give the desired lifecycle.
Add the function f
as a gauge with the given name.
Add the function f
as a gauge with the given name.
The returned gauge value is only weakly referenced by the StatsReceiver, and if garbage collected will eventually cease to be a part of this measurement: thus, it needs to be retained by the caller. Or put another way, the measurement is only guaranteed to exist as long as there exists a strong reference to the returned gauge and typically should be stored in a member variable.
Measurements under the same name are added together.
StatsReceiver.addGauge(java.util.function.Supplier,String*) for a Java-friendly version.
StatsReceiver.provideGauge when there is not a good location to store the returned gauge that can give the desired lifecycle.
Get a counter with the given schema.
Get a counter with the given schema.
Get a counter with the given name
.
Get a counter with the given name
.
Get a counter with the given name
.
Get a counter with the given name
.
Accurately indicates if this is a NullStatsReceiver.
Accurately indicates if this is a NullStatsReceiver. Because equality is not forwarded via scala.Proxy, this is helpful to check for a NullStatsReceiver.
Get a metricBuilder for this StatsReceiver.
Get a metricBuilder for this StatsReceiver.
Just like provideGauge() but optimized for better Java experience.
Just like provideGauge() but optimized for better Java experience.
Register a function f
as a gauge with the given name that has
a lifecycle with no end.
Register a function f
as a gauge with the given name that has
a lifecycle with no end.
This measurement exists in perpetuity.
Measurements under the same name are added together.
String*) for a Java-friendly version.
StatsReceiver.addGauge if you can properly control the lifecycle of the returned gauge.
Specifies the representative receiver.
Specifies the representative receiver. This is in order to expose an object we can use for comparison so that global stats are only reported once per receiver.
Prepend namespace
and namespaces
to the names of the returned StatsReceiver.
Prepend namespace
and namespaces
to the names of the returned StatsReceiver.
For example:
statsReceiver.scope("client", "backend", "pool").counter("adds")
will generate a counter named /client/backend/pool/adds
.
Note it's recommended to be mindful with usage of the scope
method as it's almost always
more efficient to pass a full metric name directly to a constructing method.
Put this way, whenever possible prefer
statsReceiver.counter("client", "backend", "pool", "adds")
to
statsReceiver.scope("client", "backend", "pool").counter("adds")
Prepend namespace
to the names of the returned StatsReceiver.
Prepend namespace
to the names of the returned StatsReceiver.
For example:
statsReceiver.scope("client").counter("adds") statsReceiver.scope("client").scope("backend").counter("adds")
will generate counters named /client/adds
and /client/backend/adds
.
Note it's recommended to be mindful with usage of the scope
method as it's almost always
more efficient to pass a full metric name directly to a constructing method.
Put this way, whenever possible prefer
statsReceiver.counter("client", "adds")
to
statsReceiver.scope("client").counter("adds")
Prepend a suffix value to the next scope.
Prepend a suffix value to the next scope.
For example:
statsReceiver.scopeSuffix("toto").scope("client").counter("adds")
will generate a counter named /client/toto/adds
.
a base StatsReceiver, used for metrics that aren't denylisted
a base StatsReceiver, used for metrics that aren't denylisted
Get a stat with the given schema.
Get a stat with the given schema.
Get a stat with the given name.
Get a stat with the given name.
Get a stat with the given name.
Get a stat with the given name.
The underlying StatsReceivers that the class delegates to.
The underlying StatsReceivers that the class delegates to.
Must be nonempty.
A denylisting StatsReceiver. If the name for a metric is found to be denylisted, nothing is recorded.