public static ReporterConfig loadFromFileAndValidate(String fileName) throws IOException { ReporterConfig config = loadFromFile(fileName); if (validate(config)) { return config; } else { throw new ReporterConfigurationException("configuration failed validation"); } }
public boolean enableAll() if (console != null && enableConsole()) if (csv != null && enableCsv()) if (ganglia != null && enableGanglia()) if (graphite != null && enableGraphite()) if (riemann != null && enableRiemann()) if (statsd != null && enableStatsd()) if (zabbix != null && enableZabbix()) if (reporters != null && enableReporters())
@Test public void validateSamples() throws IOException { ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/console.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/csv.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/ganglia.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/ganglia-gmond.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/ganglia-gmond-predicate.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/ganglia-gmond-predicate-measurement.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/graphite.yaml"); ReporterConfig.loadFromFileAndValidate("src/test/resources/sample/multi.yaml"); }
if (console != null) if (enableConsole()) if (enableCsv()) if (enableGanglia()) if (enableGraphite()) if (enableRiemann())
@Test public void sampleStatsDMulti() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/statsd-multi.yaml"); System.out.println(yaml.dump(config)); log.info("StatsD Multi"); runLoop(config); }
@Test public void sampleGeneric() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/generic.yaml"); config.enableAll(); System.out.println(yaml.dump(config)); assertEquals(1, config.getReporters().size()); assertEquals(CsvReporterConfig.class, config.getReporters().iterator().next().getClass()); log.info("Sample generic Reporter"); runLoop(config); }
@Test public void csvNamePrinting() throws Exception { log.debug("name test metrics 2.x"); com.yammer.metrics.core.Counter counter = com.yammer.metrics.Metrics.newCounter(getClass(), "mycounter"); ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/csv-predicate.yaml"); Path outdir = Paths.get(config.getCsv().get(0).getOutdir()); if (Files.exists(outdir)) { recursiveDelete(outdir); } config.enableAll(); counter.inc(); Thread.sleep(10000); }
ReporterConfig.loadFromFile(reportFileLocation).enableAll();
logger.info("Trying to load reporterConfig from file: {}", reporterConfigFile); try { ReporterConfig.loadFromFileAndValidate(reporterConfigFile).enableAll(); } catch (Exception e) { logger.error("Failed to load metrics-reporter-config, metric sinks will not be activated", e);
private void runLoop(ReporterConfig config) throws Exception { Counter counter = Metrics.newCounter(getClass(), "counter"); Meter meter = Metrics.newMeter(getClass(), "meter", "foo", TimeUnit.SECONDS); config.enableConsole(); for (int i=0; i< loops; i++) { counter.inc(); meter.mark(); Thread.sleep(1000); log.debug("runLoop tick"); } log.info("Done with sample data loop"); }
@Test public void validationWorks() throws IOException { assertFalse(ReporterConfig.validate(new HostPort())); }
@Test public void sampleGraphite() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/graphite.yaml"); System.out.println(yaml.dump(config)); log.info("Sample Graphite"); runLoop(config); }
@Test public void sampleCSV() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/csv.yaml"); System.out.println(yaml.dump(config)); log.info("Sample CSV Reporter"); runLoop(config); }
public static ReporterConfig loadFromFileAndValidate(String fileName) throws IOException { ReporterConfig config = loadFromFile(fileName); if (validate(config)) { return config; } else { throw new ReporterConfigurationException("configuration failed validation"); } }
@Test public void validateMissingPortRange() throws IOException { thrown.expect(ReporterConfig.ReporterConfigurationException.class); ReporterConfig config = ReporterConfig.loadFromFileAndValidate("src/test/resources/invalid/invalid-port-range.yaml"); }
@Test public void sampleGraphiteStringDupe() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/graphite-string-dupe.yaml"); System.out.println(yaml.dump(config)); log.info("Graphite String Dupe"); runLoop(config); }
@Test public void validateMissingPeriod() throws IOException { thrown.expect(ReporterConfig.ReporterConfigurationException.class); ReporterConfig config = ReporterConfig.loadFromFileAndValidate("src/test/resources/invalid/missing-period.yaml"); }
@Test public void sampleStatsD() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/statsd.yaml"); System.out.println(yaml.dump(config)); log.info("Sample StatsD"); runLoop(config); }
@Test public void validateMissingOutDir() throws IOException { thrown.expect(ReporterConfig.ReporterConfigurationException.class); ReporterConfig config = ReporterConfig.loadFromFileAndValidate("src/test/resources/invalid/csv-missing-outdir.yaml"); }
@Test public void sampleMulti() throws Exception { ReporterConfig config = ReporterConfig.loadFromFile("src/test/resources/sample/multi.yaml"); System.out.println(yaml.dump(config)); log.info("Multi Reporter"); runLoop(config); }