@Override public void prepare(MetricRegistry metricsRegistry, Map<String, Object> topoConf) { LOG.debug("Preparing..."); ConsoleReporter.Builder builder = ConsoleReporter.forRegistry(metricsRegistry); builder.outputTo(System.out); Locale locale = ClientMetricsUtils.getMetricsReporterLocale(topoConf); if (locale != null) { builder.formattedFor(locale); } TimeUnit rateUnit = ClientMetricsUtils.getMetricsRateUnit(topoConf); if (rateUnit != null) { builder.convertRatesTo(rateUnit); } TimeUnit durationUnit = ClientMetricsUtils.getMetricsDurationUnit(topoConf); if (durationUnit != null) { builder.convertDurationsTo(durationUnit); } reporter = builder.build(); }
@Override public void prepare(MetricRegistry registry, Map stormConf, Map reporterConf) { LOG.debug("Preparing ConsoleReporter"); ConsoleReporter.Builder builder = ConsoleReporter.forRegistry(registry); builder.outputTo(System.out); Locale locale = ClientMetricsUtils.getMetricsReporterLocale(stormConf); if (locale != null) { builder.formattedFor(locale); } TimeUnit rateUnit = ClientMetricsUtils.getMetricsRateUnit(stormConf); if (rateUnit != null) { builder.convertRatesTo(rateUnit); } TimeUnit durationUnit = ClientMetricsUtils.getMetricsDurationUnit(stormConf); if (durationUnit != null) { builder.convertDurationsTo(durationUnit); } StormMetricsFilter filter = getMetricsFilter(reporterConf); if (filter != null) { builder.filter(filter); } //defaults to 10 reportingPeriod = getReportPeriod(reporterConf); //defaults to seconds reportingPeriodUnit = getReportPeriodUnit(reporterConf); reporter = builder.build(); }
@Override protected ConsoleReporter createInstance() { final ConsoleReporter.Builder reporter = ConsoleReporter.forRegistry(getMetricRegistry()); if (hasProperty(DURATION_UNIT)) { reporter.convertDurationsTo(getProperty(DURATION_UNIT, TimeUnit.class)); } if (hasProperty(RATE_UNIT)) { reporter.convertRatesTo(getProperty(RATE_UNIT, TimeUnit.class)); } reporter.filter(getMetricFilter()); if (hasProperty(CLOCK_REF)) { reporter.withClock(getPropertyRef(CLOCK_REF, Clock.class)); } if (hasProperty(OUTPUT_REF)) { reporter.outputTo(getPropertyRef(OUTPUT_REF, PrintStream.class)); } if (hasProperty(LOCALE)) { reporter.formattedFor(parseLocale(getProperty(LOCALE))); } if (hasProperty(TIMEZONE)) { reporter.formattedFor(TimeZone.getTimeZone(getProperty(TIMEZONE))); } return reporter.build(); }
@Override public void prepare(MetricRegistry registry, Map stormConf, Map reporterConf) { LOG.debug("Preparing ConsoleReporter"); ConsoleReporter.Builder builder = ConsoleReporter.forRegistry(registry); builder.outputTo(System.out); Locale locale = MetricsUtils.getMetricsReporterLocale(stormConf); if (locale != null) { builder.formattedFor(locale); } TimeUnit rateUnit = MetricsUtils.getMetricsRateUnit(stormConf); if (rateUnit != null) { builder.convertRatesTo(rateUnit); } TimeUnit durationUnit = MetricsUtils.getMetricsDurationUnit(stormConf); if (durationUnit != null) { builder.convertDurationsTo(durationUnit); } StormMetricsFilter filter = getMetricsFilter(reporterConf); if(filter != null){ builder.filter(filter); } //defaults to 10 reportingPeriod = getReportPeriod(reporterConf); //defaults to seconds reportingPeriodUnit = getReportPeriodUnit(reporterConf); reporter = builder.build(); }
/** * Attaches a {@link ConsoleReporter} to provided {@link MetricsHandler} * @param metricsHandler * @param id * @param period * @throws RequiredInputMissingException */ private static void attachConsoleReporter(final MetricsHandler metricsHandler, final String id, final int period) throws RequiredInputMissingException { ////////////////////////////////////////////////////////////////////////// // validate input if(StringUtils.isBlank(id)) throw new RequiredInputMissingException("Missing required metric reporter id"); if(metricsHandler == null) throw new RequiredInputMissingException("Missing required metrics handler"); ////////////////////////////////////////////////////////////////////////// final ConsoleReporter reporter = ConsoleReporter.forRegistry(metricsHandler.getRegistry()). convertDurationsTo(TimeUnit.SECONDS).convertRatesTo(TimeUnit.MILLISECONDS).formattedFor(Locale.US).build(); reporter.start((period > 0 ? period : 1), TimeUnit.SECONDS); metricsHandler.addScheduledReporter(id, reporter); }
@Override public void prepare(MetricRegistry metricsRegistry, Map stormConf) { LOG.debug("Preparing..."); ConsoleReporter.Builder builder = ConsoleReporter.forRegistry(metricsRegistry); builder.outputTo(System.out); Locale locale = MetricsUtils.getMetricsReporterLocale(stormConf); if (locale != null) { builder.formattedFor(locale); } TimeUnit rateUnit = MetricsUtils.getMetricsRateUnit(stormConf); if (rateUnit != null) { builder.convertRatesTo(rateUnit); } TimeUnit durationUnit = MetricsUtils.getMetricsDurationUnit(stormConf); if (durationUnit != null) { builder.convertDurationsTo(durationUnit); } reporter = builder.build(); }
@Override public ScheduledReporter build(MetricRegistry registry) { return ConsoleReporter.forRegistry(registry) .convertDurationsTo(getDurationUnit()) .convertRatesTo(getRateUnit()) .filter(getFilter()) .formattedFor(getLocale()) .formattedFor(getTimeZone()) .outputTo(getOutput().get()) .build(); } }
@Override public ScheduledReporter build(MetricRegistry registry) { return ConsoleReporter.forRegistry(registry) .convertDurationsTo(getDurationUnit()) .convertRatesTo(getRateUnit()) .filter(getFilter()) .formattedFor(getLocale()) .formattedFor(getTimeZone()) .outputTo(getOutput().get()) .build(); } }
@Override public ScheduledReporter build(MetricRegistry registry) { return ConsoleReporter.forRegistry(registry) .convertDurationsTo(getDurationUnit()) .convertRatesTo(getRateUnit()) .filter(getFilter()) .formattedFor(getLocale()) .formattedFor(getTimeZone()) .outputTo(getOutput().get()) .build(); } }