@Override public void initializePlugin(InitArguments initArguments) { this.metricRegistry = initArguments.getMetricRegistry(); this.healthCheckRegistry = initArguments.getHealthCheckRegistry(); final Integer reloadInterval = getReloadConfigurationInterval(); if (reloadInterval > 0) { initArguments.getConfiguration().scheduleReloadAtRate(reloadInterval, TimeUnit.SECONDS); } initArguments.getMetricRegistry().register(MetricName.name("online").build(), new Gauge<Integer>() { @Override public Integer getValue() { return 1; } }); // it's important to initialize the ElasticsearchClient via getElasticsearchClient() // otherwise the periodic availability check might not get started getElasticsearchClient(); if (isReportToElasticsearch()) { final GrafanaClient grafanaClient = getGrafanaClient(); grafanaClient.createElasticsearchDatasource(getElasticsearchUrl()); grafanaClient.sendGrafanaDashboardAsync("grafana/ElasticsearchCustomMetricsDashboard.json"); } registerReporters(initArguments.getMetricRegistry(), initArguments.getConfiguration(), initArguments.getMeasurementSession()); }
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) { this.metricRegistry = initArguments.getMetricRegistry(); healthCheckRegistry = initArguments.getHealthCheckRegistry(); TracingPlugin tracingPlugin = initArguments.getPlugin(TracingPlugin.class); final CacheManager cacheManager = CacheManager.getCacheManager(ehCacheNameOption.getValue()); if (cacheManager == null) { tryAgainWhenFirstRequestComesIn(tracingPlugin); } else { monitorCaches(cacheManager); healthCheckRegistry.register("EhCache CacheManager", ImmediateResult.of(HealthCheck.Result.healthy())); } final CorePlugin corePlugin = initArguments.getPlugin(CorePlugin.class); corePlugin.getGrafanaClient().sendGrafanaDashboardAsync("grafana/ElasticsearchEhCache.json"); }