@Test public void shouldGetMetricsConfig() { when(settingsFacade.getProperty(METRICS_ENABLED)).thenReturn("true"); when(settingsFacade.getProperty(CONSOLE_REPORTER_ENABLED)).thenReturn("true"); when(settingsFacade.getProperty(CONSOLE_REPORTER_REPORTING_FREQUENCY_VALUE)).thenReturn("1"); when(settingsFacade.getProperty(CONSOLE_REPORTER_REPORTING_FREQUENCY_UNIT)) .thenReturn("SECONDS"); when(settingsFacade.getProperty(CONSOLE_REPORTER_CONVERT_RATES_UNIT)) .thenReturn("MILLISECONDS"); when(settingsFacade.getProperty(CONSOLE_REPORTER_CONVERT_DURATIONS_UNIT)).thenReturn("SECONDS"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_ENABLED)).thenReturn("true"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_GRAPHITE_SERVER_URI)) .thenReturn("http://foo.com/graphite"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_GRAPHITE_SERVER_PORT)).thenReturn("2003"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_REPORTING_FREQUENCY_VALUE)).thenReturn("1"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_REPORTING_FREQUENCY_UNIT)) .thenReturn("SECONDS"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_CONVERT_RATES_UNIT)) .thenReturn("MILLISECONDS"); when(settingsFacade.getProperty(GRAPHITE_REPORTER_CONVERT_DURATIONS_UNIT)) .thenReturn("SECONDS"); MetricsConfig config = metricsConfigFacade.getMetricsConfig(); assertNotNull(config); assertEquals(config.isMetricsEnabled(), true); ConsoleReporterConfig crConfig = config.getConsoleReporterConfig(); assertNotNull(crConfig); assertEquals(crConfig.isEnabled(), true); assertEquals(crConfig.getFrequency(), 1); assertEquals(crConfig.getFrequencyUnit(), TimeUnit.SECONDS); assertEquals(crConfig.getConvertRates(), TimeUnit.MILLISECONDS); assertEquals(crConfig.getConvertDurations(), TimeUnit.SECONDS); GraphiteReporterConfig grConfig = config.getGraphiteReporterConfig(); assertNotNull(grConfig); assertEquals(grConfig.isEnabled(), true); assertEquals(grConfig.getServerUri(), "http://foo.com/graphite"); assertEquals(grConfig.getServerPort(), 2003); assertEquals(grConfig.getFrequency(), 1); assertEquals(grConfig.getFrequencyUnit(), TimeUnit.SECONDS); assertEquals(grConfig.getConvertRates(), TimeUnit.MILLISECONDS); assertEquals(grConfig.getConvertDurations(), TimeUnit.SECONDS); }
@PostConstruct public void init() { // register the default metrics only when the module first loads if (!defaultMetricsRegistered) { registerDefaultMetrics(); defaultMetricsRegistered = true; } stopReporters(); MetricsConfig metricsConfig = metricsConfigFacade.getMetricsConfig(); metricRegistryService.setEnabled(metricsConfig.isMetricsEnabled()); if (metricsConfig.isMetricsEnabled()) { configureConsoleReporter(metricsConfig.getConsoleReporterConfig()); configureGraphiteReporter(metricsConfig.getGraphiteReporterConfig()); } }