Package com.arpnetworking.tsdcore.sinks
Class PeriodicStatisticsSink
java.lang.Object
com.arpnetworking.tsdcore.sinks.BaseSink
com.arpnetworking.tsdcore.sinks.PeriodicStatisticsSink
- All Implemented Interfaces:
Sink
Aggregates and periodically logs metrics about the aggregated data being
record; effectively, this is metrics about metrics.
The sink's original and primary purpose is to provide a quick sanity check
on installations by generating metrics that the aggregator can then consume
(and use to generate more metrics).
More recently, this class has been extended to allow attribution of usage
by bucketing and tagging the emitted periodic self-instrumentation metrics
using configured tag keys whose values are lighted from the data flow itself.
This class is thread safe.
- Author:
- Ville Koskela (ville dot koskela at inscopemetrics dot io)
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
Implementation of builder pattern forPeriodicStatisticsSink
. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Called to allow the publisher to clean-up.void
recordAggregateData
(PeriodicData periodicData) Called when an additionalPeriodicData
instance is available for publication.Generate a Steno log compatible representation.Methods inherited from class com.arpnetworking.tsdcore.sinks.BaseSink
getMetricSafeName, getName, toString
-
Method Details
-
recordAggregateData
Description copied from interface:Sink
Called when an additionalPeriodicData
instance is available for publication.- Parameters:
periodicData
- ThePeriodicData
to be published.
-
close
public void close()Description copied from interface:Sink
Called to allow the publisher to clean-up. No further calls to recordAggregation will be made after a call to close. -
toLogValue
Description copied from class:BaseSink
Generate a Steno log compatible representation.- Overrides:
toLogValue
in classBaseSink
- Returns:
- Steno log compatible representation.
-