
com.tinkerpop.rexster.server.metrics.ConsoleReporterConfig Maven / Gradle / Ivy
The newest version!
package com.tinkerpop.rexster.server.metrics;
import com.codahale.metrics.ConsoleReporter;
import com.codahale.metrics.MetricRegistry;
import org.apache.commons.configuration.HierarchicalConfiguration;
import org.apache.log4j.Logger;
/**
* Configures a reporter that writes to the console.
*
* @author Stephen Mallette (http://stephen.genoprime.com)
*/
class ConsoleReporterConfig extends AbstractReporterConfig {
private static final Logger logger = Logger.getLogger(ConsoleReporterConfig.class);
private ConsoleReporter consoleReporter;
public ConsoleReporterConfig(final HierarchicalConfiguration config, final MetricRegistry metricRegistry) {
super(config, metricRegistry);
logger.info("Configured Console Metric Reporter.");
}
@Override
public boolean enable() {
try
{
consoleReporter = ConsoleReporter.forRegistry(this.metricRegistry)
.convertDurationsTo(this.getRealDurationTimeUnitConversion())
.convertRatesTo(this.getRealRateTimeUnitConversion())
.filter(new RegexMetricFilter(this.inclusion, this.exclusion))
.build();
consoleReporter.start(this.period, this.getRealTimeUnit());
}
catch (Exception e)
{
logger.error("Failure while enabling console reporter", e);
return false;
}
return true;
}
@Override
public void disable() {
consoleReporter.stop();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy