@Test public void testGetInstance() throws Exception { PollScheduler p = PollScheduler.getInstance(); assertNotNull(p); }
@Test public void testStart() throws Exception { ScheduledExecutorService s = Executors.newScheduledThreadPool(2); PollScheduler.getInstance().start(s); assertTrue(PollScheduler.getInstance().isStarted()); //PollScheduler.getInstance().addPoller( ,60, TimeUnit.SECONDS); PollScheduler.getInstance().stop(); }
@Test public void testStartNoArg() throws Exception { PollScheduler.getInstance().start(); assertTrue(PollScheduler.getInstance().isStarted()); PollScheduler.getInstance().stop(); }
@Test public void testStop() throws Exception { ScheduledExecutorService s = Executors.newScheduledThreadPool(2); PollScheduler.getInstance().start(s); assertTrue(PollScheduler.getInstance().isStarted()); PollScheduler.getInstance().stop(); assertTrue(!PollScheduler.getInstance().isStarted()); assertTrue(s.isShutdown()); } }
private static void schedule(MetricPoller poller, List<MetricObserver> observers) { final PollRunnable task = new PollRunnable(poller, BasicMetricFilter.MATCH_ALL, true, observers); PollScheduler.getInstance().addPoller(task, Config.getPollInterval(), TimeUnit.SECONDS); }
private static void initMetricsPublishing() throws Exception { final List<MetricObserver> observers = new ArrayList<>(); if (Config.isFileObserverEnabled()) { observers.add(createFileObserver()); } if (Config.isAtlasObserverEnabled()) { observers.add(createAtlasObserver()); } if (Config.isGraphiteObserverEnabled()) { observers.add(createGraphiteObserver()); } PollScheduler.getInstance().start(); schedule(new MonitorRegistryMetricPoller(), observers); if (Config.isJvmPollerEnabled()) { schedule(new JvmMetricPoller(), observers); } }
private static void initHttpServer() throws Exception { // Setup default endpoints final HttpServer server = HttpServer.create(); server.createContext("/echo", new EchoHandler()); // Hook to allow for graceful exit final Closeable c = () -> { PollScheduler.getInstance().stop(); server.stop(5); }; server.createContext("/exit", new ExitHandler(c)); // Bind and start server server.bind(new InetSocketAddress(Config.getPort()), 0); server.start(); }
private static void doStop() { if (!initialized) { return; } PollScheduler.getInstance().stop(); }
private void scheduleTasks(final List<PollRunnable> tasks) { if (tasks != null) { for (final PollRunnable task : tasks) { PollScheduler.getInstance().addPoller(task, pollInterval, timeUnit); } } }
private static void doStop() { if (!initialized) { return; } PollScheduler.getInstance().stop(); LOGGER.debug("PollScheduler.getInstance().stop() completed"); initialized = false; LOGGER.debug("doStop() complete, initialized = " + initialized); }
@Override public boolean isMonitoringStarted() { return PollScheduler.getInstance().isStarted(); }
/** * Call this method to stop collecting all metrics. */ @Override public void stop() { final PollScheduler scheduler = PollScheduler.getInstance(); if (monitoringEnabled && scheduler.isStarted()) { synchronized (scheduler) { if (scheduler.isStarted()) { scheduler.stop(); unregisterCustomMonitors(); LOG.info("monitoring stopped."); } } } }
PollScheduler.getInstance().start(); PollScheduler.getInstance().addPoller(registeryTask, 5, TimeUnit.SECONDS); PollScheduler.getInstance().addPoller(jvmTask, 5, TimeUnit.SECONDS);
@Override protected void initializePlatform() { if (initalized) return; try { PollScheduler scheduler = PollScheduler.getInstance(); scheduler.start(); MetricObserver fileObserver = new FileMetricObserver("stats", new File(".")); MetricObserver transform = new CounterToRateMetricTransform(fileObserver, 2, TimeUnit.MINUTES); PollRunnable task = new PollRunnable(new MonitorRegistryMetricPoller(), BasicMetricFilter.MATCH_ALL, transform); scheduler.addPoller(task, 1, TimeUnit.MINUTES); } catch (Throwable e) { // dont do anything... just eat. logger.error("Epic Plugin was not intialized: ", e); } initalized = true; }
/** * Call this method to start collecting the metrics (both Jvm and custom). */ @Override public void start() { final PollScheduler scheduler = PollScheduler.getInstance(); if (monitoringEnabled && !scheduler.isStarted()) { synchronized (scheduler) { if (!scheduler.isStarted()) { scheduler.start(); scheduleTasks(pollRunnables); registerCustomMonitors(); LOG.info("monitoring started."); } } } }
PollScheduler.getInstance().start(); PollScheduler.getInstance().addPoller(registeryTask, 5, TimeUnit.SECONDS); PollScheduler.getInstance().addPoller(jvmTask, 5, TimeUnit.SECONDS);
public void init() { PollScheduler scheduler = PollScheduler.getInstance(); if (!scheduler.isStarted()) { scheduler.start(); } if (isRollingFileEnabled()) { MetricObserver fileObserver = new FileOutputMetricObserver(fileOutput, convertor, formatter); MetricObserver fileTransform = new CounterToRateMetricTransform(fileObserver, metricPoll, TimeUnit.SECONDS); PollRunnable fileTask = new PollRunnable(new MonitorRegistryMetricPoller(), BasicMetricFilter.MATCH_ALL, fileTransform); scheduler.addPoller(fileTask, metricPoll, TimeUnit.SECONDS); } }