Class StatsdMeterRegistry


  • public class StatsdMeterRegistry
    extends io.micrometer.core.instrument.MeterRegistry
    MeterRegistry for StatsD. The following StatsD line protocols are supported:
    • Datadog (default)
    • Etsy
    • Telegraf
    • Sysdig
    See StatsdFlavor for more details.
    Since:
    1.0.0
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  StatsdMeterRegistry.Builder
      A builder for configuration of less common knobs on StatsdMeterRegistry.
      • Nested classes/interfaces inherited from class io.micrometer.core.instrument.MeterRegistry

        io.micrometer.core.instrument.MeterRegistry.Config, io.micrometer.core.instrument.MeterRegistry.More
    • Field Summary

      • Fields inherited from class io.micrometer.core.instrument.MeterRegistry

        clock
    • Constructor Summary

      Constructors 
      Constructor Description
      StatsdMeterRegistry​(StatsdConfig config, io.micrometer.core.instrument.Clock clock)  
      StatsdMeterRegistry​(StatsdConfig config, io.micrometer.core.instrument.util.HierarchicalNameMapper nameMapper, io.micrometer.core.instrument.Clock clock)
      Use this constructor for Etsy-flavored StatsD when you need to influence the way Micrometer's dimensional Meter.Id is written to a flat hierarchical name.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static StatsdMeterRegistry.Builder builder​(StatsdConfig config)  
      void close()  
      protected io.micrometer.core.instrument.distribution.DistributionStatisticConfig defaultHistogramConfig()  
      protected java.util.concurrent.TimeUnit getBaseTimeUnit()  
      protected io.micrometer.core.instrument.Counter newCounter​(io.micrometer.core.instrument.Meter.Id id)  
      protected io.micrometer.core.instrument.DistributionSummary newDistributionSummary​(io.micrometer.core.instrument.Meter.Id id, io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig, double scale)  
      protected <T> io.micrometer.core.instrument.FunctionCounter newFunctionCounter​(io.micrometer.core.instrument.Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> countFunction)  
      protected <T> io.micrometer.core.instrument.FunctionTimer newFunctionTimer​(io.micrometer.core.instrument.Meter.Id id, T obj, java.util.function.ToLongFunction<T> countFunction, java.util.function.ToDoubleFunction<T> totalTimeFunction, java.util.concurrent.TimeUnit totalTimeFunctionUnit)  
      protected <T> io.micrometer.core.instrument.Gauge newGauge​(io.micrometer.core.instrument.Meter.Id id, T obj, java.util.function.ToDoubleFunction<T> valueFunction)  
      protected io.micrometer.core.instrument.LongTaskTimer newLongTaskTimer​(io.micrometer.core.instrument.Meter.Id id)  
      protected io.micrometer.core.instrument.Meter newMeter​(io.micrometer.core.instrument.Meter.Id id, io.micrometer.core.instrument.Meter.Type type, java.lang.Iterable<io.micrometer.core.instrument.Measurement> measurements)  
      protected io.micrometer.core.instrument.Timer newTimer​(io.micrometer.core.instrument.Meter.Id id, io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig, io.micrometer.core.instrument.distribution.pause.PauseDetector pauseDetector)  
      int queueCapacity()  
      int queueSize()  
      void start()  
      void stop()  
      • Methods inherited from class io.micrometer.core.instrument.MeterRegistry

        clear, config, counter, counter, find, forEachMeter, gauge, gauge, gauge, gauge, gaugeCollectionSize, gaugeMapSize, get, getConventionName, getConventionTags, getMeters, isClosed, more, newTimeGauge, remove, remove, summary, summary, timer, timer
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • StatsdMeterRegistry

        public StatsdMeterRegistry​(StatsdConfig config,
                                   io.micrometer.core.instrument.Clock clock)
      • StatsdMeterRegistry

        public StatsdMeterRegistry​(StatsdConfig config,
                                   io.micrometer.core.instrument.util.HierarchicalNameMapper nameMapper,
                                   io.micrometer.core.instrument.Clock clock)
        Use this constructor for Etsy-flavored StatsD when you need to influence the way Micrometer's dimensional Meter.Id is written to a flat hierarchical name.
        Parameters:
        config - The StatsD configuration.
        nameMapper - A strategy for flattening dimensional IDs.
        clock - The clock to use for timing and polling certain types of meters.
    • Method Detail

      • start

        public void start()
      • stop

        public void stop()
      • close

        public void close()
        Overrides:
        close in class io.micrometer.core.instrument.MeterRegistry
      • newGauge

        protected <T> io.micrometer.core.instrument.Gauge newGauge​(io.micrometer.core.instrument.Meter.Id id,
                                                                   @Nullable
                                                                   T obj,
                                                                   java.util.function.ToDoubleFunction<T> valueFunction)
        Specified by:
        newGauge in class io.micrometer.core.instrument.MeterRegistry
      • newCounter

        protected io.micrometer.core.instrument.Counter newCounter​(io.micrometer.core.instrument.Meter.Id id)
        Specified by:
        newCounter in class io.micrometer.core.instrument.MeterRegistry
      • newLongTaskTimer

        protected io.micrometer.core.instrument.LongTaskTimer newLongTaskTimer​(io.micrometer.core.instrument.Meter.Id id)
        Specified by:
        newLongTaskTimer in class io.micrometer.core.instrument.MeterRegistry
      • newTimer

        protected io.micrometer.core.instrument.Timer newTimer​(io.micrometer.core.instrument.Meter.Id id,
                                                               io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig,
                                                               io.micrometer.core.instrument.distribution.pause.PauseDetector pauseDetector)
        Specified by:
        newTimer in class io.micrometer.core.instrument.MeterRegistry
      • newDistributionSummary

        protected io.micrometer.core.instrument.DistributionSummary newDistributionSummary​(io.micrometer.core.instrument.Meter.Id id,
                                                                                           io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig,
                                                                                           double scale)
        Specified by:
        newDistributionSummary in class io.micrometer.core.instrument.MeterRegistry
      • newFunctionCounter

        protected <T> io.micrometer.core.instrument.FunctionCounter newFunctionCounter​(io.micrometer.core.instrument.Meter.Id id,
                                                                                       T obj,
                                                                                       java.util.function.ToDoubleFunction<T> countFunction)
        Specified by:
        newFunctionCounter in class io.micrometer.core.instrument.MeterRegistry
      • newFunctionTimer

        protected <T> io.micrometer.core.instrument.FunctionTimer newFunctionTimer​(io.micrometer.core.instrument.Meter.Id id,
                                                                                   T obj,
                                                                                   java.util.function.ToLongFunction<T> countFunction,
                                                                                   java.util.function.ToDoubleFunction<T> totalTimeFunction,
                                                                                   java.util.concurrent.TimeUnit totalTimeFunctionUnit)
        Specified by:
        newFunctionTimer in class io.micrometer.core.instrument.MeterRegistry
      • newMeter

        protected io.micrometer.core.instrument.Meter newMeter​(io.micrometer.core.instrument.Meter.Id id,
                                                               io.micrometer.core.instrument.Meter.Type type,
                                                               java.lang.Iterable<io.micrometer.core.instrument.Measurement> measurements)
        Specified by:
        newMeter in class io.micrometer.core.instrument.MeterRegistry
      • getBaseTimeUnit

        protected java.util.concurrent.TimeUnit getBaseTimeUnit()
        Specified by:
        getBaseTimeUnit in class io.micrometer.core.instrument.MeterRegistry
      • defaultHistogramConfig

        protected io.micrometer.core.instrument.distribution.DistributionStatisticConfig defaultHistogramConfig()
        Specified by:
        defaultHistogramConfig in class io.micrometer.core.instrument.MeterRegistry
      • queueSize

        public int queueSize()
      • queueCapacity

        public int queueCapacity()