/** * Initialize the endpoint and server config metrics. Note that the server config values will not be added if * {@link #includeServerConfigMetrics} is false, however {@link * EndpointMetricsHandler#setupEndpointsMetrics(ServerConfig, MetricRegistry)} will always be called. * * @param config The {@link ServerConfig} that contains the endpoints and server config values. */ public void initEndpointAndServerConfigMetrics(ServerConfig config) { if (includeServerConfigMetrics) addServerConfigMetrics(config); endpointMetricsHandler.setupEndpointsMetrics(config, metricsCollector.getMetricRegistry()); }
/** * @return A default {@link DefaultMetricNamingStrategy}. */ static <T extends Enum> MetricNamingStrategy<T> defaultImpl() { return new DefaultMetricNamingStrategy<>(); }
/** * The units associated with the interval */ default TimeUnit getTimeUnit() { if (isScheduled()) { return TimeUnit.MINUTES; } else { return null; } }
public Timer getNamedTimer(String timerName, Iterable<Pair<String, String>> dimensions) { return getNamedMetric(timerName, timerBuilder, dimensions); }
/** * Provides a CodahaleMetricsEngine with the default CodahaleMetricsCollector */ public CodahaleMetricsEngine() { this(new CodahaleMetricsCollector()); }
/** * @return a {@link CodahaleMetricsListener} built with parameters from this builder. */ public CodahaleMetricsListener build() { return new CodahaleMetricsListener( metricsCollector, endpointMetricsHandler, includeServerConfigMetrics, serverStatsMetricNamingStrategy, serverConfigMetricNamingStrategy, requestAndResponseSizeHistogramSupplier ); }
/** * @return A {@link DefaultMetricNamingStrategy} that has no prefix but is otherwise default. */ static <T extends Enum> MetricNamingStrategy<T> defaultNoPrefixImpl() { return defaultImpl(null, DefaultMetricNamingStrategy.DEFAULT_WORD_DELIMITER); }
@Override public Timer getNamedTimer(String timerName) { return getNamedTimer(timerName, (Iterable<Pair<String, String>>)null); }
@Override public Meter getNamedMeter(String meterName) { return getNamedMeter(meterName, (Iterable<Pair<String, String>>)null); }
@Override public <M extends Metric> M registerNamedMetric(String metricName, M metric) { return registerNamedMetric(metricName, metric, (Iterable<Pair<String, String>>)null); }
@Override public Counter getNamedCounter(String counterName) { return getNamedCounter(counterName, (Iterable<Pair<String, String>>)null); }
@Override public Histogram getNamedHistogram(String histogramName) { return getNamedHistogram(histogramName, (Iterable<Pair<String, String>>)null); }
public MetricRegistry getMetricRegistry() { return metricsCollector.getMetricRegistry(); }
/** * @param cmc The {@link CodahaleMetricsCollector} that should be used. This is a required field and must be * non-null by the time {@link Builder#build()} is called or an {@link IllegalArgumentException} will be thrown. * * @return A new builder for {@link CodahaleMetricsListener}. */ public static Builder newBuilder(CodahaleMetricsCollector cmc) { return new Builder(cmc); }
private <M extends Metric> void verifyMetricCreation( MetricBuilder<M> metricBuilder, BuilderTagger<M> builderTaggerMock, String metricName, M expectedMetricResult, M actualMetricResult ) { verifyMetricCreation( metricBuilder, builderTaggerMock, metricName, null, expectedMetricResult, actualMetricResult ); }
public Meter getNamedMeter(String meterName, Iterable<Pair<String, String>> dimensions) { return getNamedMetric(meterName, MetricBuilder.METERS, dimensions); }
/** * @return A {@link DefaultMetricNamingStrategy} with the given prefix and word delimiter settings. */ static <T extends Enum> MetricNamingStrategy<T> defaultImpl(String prefix, String wordDelimiter) { return new DefaultMetricNamingStrategy<>(prefix, wordDelimiter); } }
/** * Provides a CodahaleMetricsEngine with the default CodahaleMetricsCollector and some ReporterFactories */ public CodahaleMetricsEngine(Collection<ReporterFactory> reporters) { this(new CodahaleMetricsCollector(), reporters); }
/** * The interval at which Reporters produced by this Factory should report */ default Long getInterval() { if (isScheduled()) { return 1L; } else { return null; } }
public Counter getNamedCounter(String counterName, Iterable<Pair<String, String>> dimensions) { return getNamedMetric(counterName, MetricBuilder.COUNTERS, dimensions); }