trait StatsReceiver extends AnyRef
An interface for recording metrics. Named Counters, Stats, and Gauges can be accessed through the corresponding methods of this class.
Verbosity Levels
Each metric created via a stats receiver has a verbosity level attached to it. Distinguishing verbosity levels for metrics is optional and is up to a concrete implementation. Doing this, however, helps to separate debug metrics (only helpful in troubleshooting) from their operationally-required counterparts (provide a corresponding degree of visibility into a healthy process) thus potentially reducing the observability cost.
Metrics created w/o an explicitly specified Verbosity level, will use Verbosity.Default. Use VerbosityAdjustingStatsReceiver to adjust this behaviour.
- Alphabetic
- By Inheritance
- StatsReceiver
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
-   abstract  def addGauge(metricBuilder: MetricBuilder)(f: => Float): GaugeAdd the function fas a gauge with the given name.Add the function fas 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. - See also
- provideGauge(String*)(=>Float) when there is not a good location to store the returned gauge that can give the desired lifecycle. 
 
-   abstract  def counter(schema: MetricBuilder): CounterGet a counter with the given schema. 
-   abstract  def repr: AnyRefSpecifies 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. 
-   abstract  def stat(schema: MetricBuilder): StatGet a stat with the given schema. 
Concrete Value Members
-   final  def !=(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-   final  def ##: Int- Definition Classes
- AnyRef → Any
 
-   final  def ==(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-   final  def addGauge(f: Supplier[Float], verbosity: Verbosity, name: String*): GaugeJust like addGauge(Verbosity,String*)(=>Float) but optimized for better Java experience. Just like addGauge(Verbosity,String*)(=>Float) but optimized for better Java experience. - Annotations
- @varargs()
 
-    def addGauge(f: Supplier[Float], name: String*): GaugeJust like addGauge(String*)(=>Float) but optimized for better Java experience. Just like addGauge(String*)(=>Float) but optimized for better Java experience. - Annotations
- @varargs()
 
-   final  def addGauge(description: String, verbosity: Verbosity, name: String*)(f: => Float): GaugeAdd the function fas a gauge with the given name and description.
-   final  def addGauge(verbosity: Verbosity, name: String*)(f: => Float): GaugeAdd the function fas a gauge with the given name.Add the function fas 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. - See also
- provideGauge(String*)(=>Float) when there is not a good location to store the returned gauge that can give the desired lifecycle. - addGauge(Supplier[Float],Verbosity,String*) for a Java-friendly version. 
 
-    def addGauge(description: Some[String], name: String*)(f: => Float): GaugeAdd the function fas a gauge with the given name and description.
-    def addGauge(name: String*)(f: => Float): GaugeAdd the function fas a gauge with the given name.Add the function fas 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. - See also
- provideGauge(String*)(=>Float) when there is not a good location to store the returned gauge that can give the desired lifecycle. - addGauge(Supplier[Float],String*) for a Java-friendly version. 
 
-   final  def asInstanceOf[T0]: T0- Definition Classes
- Any
 
-    def clone(): AnyRef- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
 
-   final  def counter(description: String, verbosity: Verbosity, name: String*): CounterGet a counter with the given descriptionandname.Get a counter with the given descriptionandname.- Annotations
- @varargs()
 
-   final  def counter(verbosity: Verbosity, name: String*): CounterGet a counter with the given name.Get a counter with the given name.- Annotations
- @varargs()
 
-   final  def counter(description: Some[String], name: String*): CounterGet a counter with the given descriptionandname.Get a counter with the given descriptionandname.- Annotations
- @varargs()
 
-    def counter(name: String*): CounterGet a counter with the given name.Get a counter with the given name.- Annotations
- @varargs()
 
-   final  def eq(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-    def equals(arg0: AnyRef): Boolean- Definition Classes
- AnyRef → Any
 
-    def finalize(): Unit- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
 
-   final  def getClass(): Class[_ <: AnyRef]- Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
-    def hashCode(): Int- Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
-   final  def isInstanceOf[T0]: Boolean- Definition Classes
- Any
 
-    def isNull: BooleanAccurately 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. 
-   final  def ne(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-   final  def notify(): Unit- Definition Classes
- AnyRef
- Annotations
- @native()
 
-   final  def notifyAll(): Unit- Definition Classes
- AnyRef
- Annotations
- @native()
 
-    def provideGauge(f: Supplier[Float], name: String*): UnitJust like provideGauge(String*)(=>Float) but optimized for better Java experience. Just like provideGauge(String*)(=>Float) but optimized for better Java experience. - Annotations
- @varargs()
 
-    def provideGauge(name: String*)(f: => Float): UnitRegister a function fas a gauge with the given name that has a lifecycle with no end.Register a function fas 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. - See also
- addGauge(String*)(=>Float) if you can properly control the lifecycle of the returned gauge. - provideGauge(Supplier[Float],String*) for a Java-friendly version. 
 
-    def registerExpression(expressionSchema: ExpressionSchema): Try[Unit]Register an ExpressionSchema.Register an ExpressionSchema.Implementations that support expressions should override this to consume expressions. 
-   final  def scope(namespaces: String*): StatsReceiverPrepend namespaceandnamespacesto the names of the returned StatsReceiver.Prepend namespaceandnamespacesto 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 scopemethod 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") - Annotations
- @varargs()
 
-    def scope(namespace: String): StatsReceiverPrepend namespaceto the names of the returned StatsReceiver.Prepend namespaceto 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/addsand/client/backend/adds.Note it's recommended to be mindful with usage of the scopemethod 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") 
-    def scopeSuffix(suffix: String): StatsReceiverPrepend 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.
-   final  def stat(description: String, verbosity: Verbosity, name: String*): StatGet a stat with the given descriptionandname.Get a stat with the given descriptionandname.- Annotations
- @varargs()
 
-   final  def stat(verbosity: Verbosity, name: String*): StatGet a stat with the given name. Get a stat with the given name. - Annotations
- @varargs()
 
-   final  def stat(description: Some[String], name: String*): StatGet a stat with the given descriptionandname.Get a stat with the given descriptionandname.- Annotations
- @varargs()
 
-    def stat(name: String*): StatGet a stat with the given name. Get a stat with the given name. - Annotations
- @varargs()
 
-   final  def synchronized[T0](arg0: => T0): T0- Definition Classes
- AnyRef
 
-    def toString(): String- Definition Classes
- AnyRef → Any
 
-   final  def wait(): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
 
-   final  def wait(arg0: Long, arg1: Int): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
 
-   final  def wait(arg0: Long): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
 
Deprecated Value Members
-    def metricBuilder(metricType: MetricType): MetricBuilderGet a metricBuilder for this StatsReceiver. Get a metricBuilder for this StatsReceiver. - Annotations
- @deprecated
- Deprecated
- (Since version 2022-05-11) Construct a MetricBuilder using its apply method