/** * Stops the configured {@link ScheduledReporter} from reporting metrics. * * @throws Exception */ @Override public void stop() throws Exception { try { if (reportOnStop) { reporter.report(); } } finally { reporter.stop(); } } }
/** * Starts the reporter polling at the given period. * * @param initialDelay the time to delay the first execution * @param period the amount of time between polls * @param unit the unit for {@code period} and {@code initialDelay} */ synchronized public void start(long initialDelay, long period, TimeUnit unit) { start(initialDelay, period, unit, () -> { try { report(); } catch (Throwable ex) { LOG.error("Exception thrown from {}#report. Exception was suppressed.", ScheduledReporter.this.getClass().getSimpleName(), ex); } }); }
scheduledReporter.report();
@Override public void report() { // we do not need to lock here, because the dropwizard registry is // internally a concurrent map @SuppressWarnings("rawtypes") final SortedMap<String, com.codahale.metrics.Gauge> gauges = registry.getGauges(); final SortedMap<String, com.codahale.metrics.Counter> counters = registry.getCounters(); final SortedMap<String, com.codahale.metrics.Histogram> histograms = registry.getHistograms(); final SortedMap<String, com.codahale.metrics.Meter> meters = registry.getMeters(); final SortedMap<String, com.codahale.metrics.Timer> timers = registry.getTimers(); this.reporter.report(gauges, counters, histograms, meters, timers); }
reporterFactory.build(metrics).report();
/** * Report the current values of all metrics in the registry. */ public void report() { synchronized (this) { report(registry.getGauges(filter), registry.getCounters(filter), registry.getHistograms(filter), registry.getMeters(filter), registry.getTimers(filter)); } }
ScheduledReporter reporter = reporterFactory.build(environment.metrics()); logger.info("Reporting via: " + reporter); reporter.report(); logger.info("Reporting finished...");
/** * Report the registered metrics. * * @param context used for getting the most recent {@link ProcessGroupStatus}. */ @Override public void onTrigger(ReportingContext context) { String groupId = context.getProperty(PROCESS_GROUP_ID).evaluateAttributeExpressions().getValue(); ProcessGroupStatus statusToReport = groupId == null ? context.getEventAccess().getControllerStatus() : context.getEventAccess().getGroupStatus(groupId); if (statusToReport != null) { currentStatusReference.set(statusToReport); reporter.report(); } else { getLogger().error("Process group with provided group id could not be found."); } }
@Override public void run() { report(); } }, period, period, unit);
@Override public void run() { report(); } }, period, period, unit);
/** Immediately send a report on the metrics. */ public void report() { reporter.report(); } }
public MetricReporters report() { for (ScheduledReporter scheduledReporter : scheduledReporters) { logger.info("flushing reporter data: " + scheduledReporter); scheduledReporter.report(); } return this; }
public void shutdown() { for (ScheduledReporter reporter : scheduledReporters) { reporter.report(); reporter.stop(); } }
@Override public void stopMetrics() { for (ScheduledReporter r : reporters) { r.report(); LOG.info("Stopping reporter {}", r.toString()); r.stop(); } }
@Override public void copierEnd(Metrics metrics) { if (runningMetricsReporter == null) { throw new IllegalStateException("Metrics reporter should not be null"); } runningMetricsReporter.report(); runningMetricsReporter.stop(); // once stopped unusable so get rid of it runningMetricsReporter = null; this.metrics = metrics; }
@Override public void copierStart(String copierImplementation) { runningMetricsReporter = runningMetricsReporterFactory.newInstance(qualifiedReplicaName); runningMetricsReporter.start(metricsReporterPeriod, metricsReporterTimeUnit); runningMetricsReporter.report(); }
@Synchronized @Override public void close() { for (ScheduledReporter r : reporters) { try { r.report(); r.stop(); } catch (Exception e) { log.error("Exception report or stop reporter", e); } } metrics.removeMatching(MetricFilter.ALL); }
/** * Report the current values of all metrics in the registry. */ public void report() { report(registry.getGauges(filter), registry.getCounters(filter), registry.getHistograms(filter), registry.getMeters(filter), registry.getTimers(filter)); }
/** * Report the current values of all metrics in the registry. */ public void report() { report(registry.getGauges(filter), registry.getCounters(filter), registry.getHistograms(filter), registry.getMeters(filter), registry.getTimers(filter)); }
@Override public void report() { // we do not need to lock here, because the dropwizard registry is // internally a concurrent map @SuppressWarnings("rawtypes") final SortedMap<String, com.codahale.metrics.Gauge> gauges = registry.getGauges(); final SortedMap<String, com.codahale.metrics.Counter> counters = registry.getCounters(); final SortedMap<String, com.codahale.metrics.Histogram> histograms = registry.getHistograms(); final SortedMap<String, com.codahale.metrics.Meter> meters = registry.getMeters(); final SortedMap<String, com.codahale.metrics.Timer> timers = registry.getTimers(); this.reporter.report(gauges, counters, histograms, meters, timers); }