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, removeByPreFilterId, 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()