Class GraphiteReporter.Builder

  • Enclosing class:
    GraphiteReporter

    public static class GraphiteReporter.Builder
    extends Object
    A builder for GraphiteReporter instances. Defaults to not using a prefix, using the default clock, converting rates to events/second, converting durations to milliseconds, and not filtering metrics.
    • Method Detail

      • shutdownExecutorOnStop

        public GraphiteReporter.Builder shutdownExecutorOnStop​(boolean shutdownExecutorOnStop)
        Specifies whether or not, the executor (used for reporting) will be stopped with same time with reporter. Default value is true. Setting this parameter to false, has the sense in combining with providing external managed executor via scheduleOn(ScheduledExecutorService).
        Parameters:
        shutdownExecutorOnStop - if true, then executor will be stopped in same time with this reporter
        Returns:
        this
      • scheduleOn

        public GraphiteReporter.Builder scheduleOn​(ScheduledExecutorService executor)
        Specifies the executor to use while scheduling reporting of metrics. Default value is null. Null value leads to executor will be auto created on start.
        Parameters:
        executor - the executor to use while scheduling reporting of metrics.
        Returns:
        this
      • withClock

        public GraphiteReporter.Builder withClock​(io.dropwizard.metrics5.Clock clock)
        Use the given Clock instance for the time.
        Parameters:
        clock - a Clock instance
        Returns:
        this
      • prefixedWith

        public GraphiteReporter.Builder prefixedWith​(String prefix)
        Prefix all metric names with the given string.
        Parameters:
        prefix - the prefix for all metric names
        Returns:
        this
      • convertRatesTo

        public GraphiteReporter.Builder convertRatesTo​(TimeUnit rateUnit)
        Convert rates to the given time unit.
        Parameters:
        rateUnit - a unit of time
        Returns:
        this
      • convertDurationsTo

        public GraphiteReporter.Builder convertDurationsTo​(TimeUnit durationUnit)
        Convert durations to the given time unit.
        Parameters:
        durationUnit - a unit of time
        Returns:
        this
      • filter

        public GraphiteReporter.Builder filter​(io.dropwizard.metrics5.MetricFilter filter)
        Only report metrics which match the given filter.
        Parameters:
        filter - a MetricFilter
        Returns:
        this
      • disabledMetricAttributes

        public GraphiteReporter.Builder disabledMetricAttributes​(Set<io.dropwizard.metrics5.MetricAttribute> disabledMetricAttributes)
        Don't report the passed metric attributes for all metrics (e.g. "p999", "stddev" or "m15"). See MetricAttribute.
        Parameters:
        disabledMetricAttributes - a set of MetricAttribute
        Returns:
        this
      • addMetricAttributesAsTags

        public GraphiteReporter.Builder addMetricAttributesAsTags​(boolean addMetricAttributesAsTags)
        Specifies whether or not metric attributes (e.g. "p999", "stddev" or "m15") should be reported in the traditional dot delimited format or in the tag based format. Without tags (default): `my.metric.p99` With tags: `my.metric;metricattribute=p99`

        Note that this setting only modifies the metric attribute, and will not convert any other portion of the metric name to use tags. For mor information on Graphite tag support see https://graphite.readthedocs.io/en/latest/tags.html See MetricAttribute.

        Parameters:
        addMetricAttributesAsTags - if true, then metric attributes will be added as tags
        Returns:
        this
      • withFloatingPointFormatter

        public GraphiteReporter.Builder withFloatingPointFormatter​(DoubleFunction<String> floatingPointFormatter)
        Use custom floating point formatter.
        Parameters:
        floatingPointFormatter - a custom formatter for floating point values
        Returns:
        this