Class StatsdMeterRegistry

java.lang.Object
io.micrometer.core.instrument.MeterRegistry
io.micrometer.statsd.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

    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, io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig)  
    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()
    Deprecated.
    queue capacity is no longer available since 1.4.0
    int queueSize()
    Deprecated.
    queue size is no longer available since 1.4.0
    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, newLongTaskTimer, 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 Details

    • 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 Details

    • builder

      public static StatsdMeterRegistry.Builder builder​(StatsdConfig config)
    • 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, io.micrometer.core.instrument.distribution.DistributionStatisticConfig distributionStatisticConfig)
      Overrides:
      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

      @Deprecated public int queueSize()
      Deprecated.
      queue size is no longer available since 1.4.0
      Returns:
      constant -1
    • queueCapacity

      @Deprecated public int queueCapacity()
      Deprecated.
      queue capacity is no longer available since 1.4.0
      Returns:
      constant -1