@Override public void initializePlugin(final StagemonitorPlugin.InitArguments initArguments) { corePlugin = initArguments.getPlugin(CorePlugin.class); corePlugin.getGrafanaClient().sendGrafanaDashboardAsync("grafana/ElasticsearchRequestDashboard.json"); final Metric2Registry metricRegistry = initArguments.getMetricRegistry(); tracerFactory = getTracerImpl(); final Tracer tracer = tracerFactory.getTracer(initArguments); reportingSpanEventListener = new ReportingSpanEventListener(initArguments.getConfiguration()); for (SpanReporter spanReporter : ServiceLoader.load(SpanReporter.class, RequestMonitor.class.getClassLoader())) { addReporter(spanReporter); } samplePriorityDeterminingSpanInterceptor = new SamplePriorityDeterminingSpanEventListener(initArguments.getConfiguration()); final ServiceLoader<SpanEventListenerFactory> factories = ServiceLoader.load(SpanEventListenerFactory.class, TracingPlugin.class.getClassLoader()); this.spanWrappingTracer = createSpanWrappingTracer(tracer, initArguments.getConfiguration(), metricRegistry, factories, samplePriorityDeterminingSpanInterceptor, reportingSpanEventListener); GlobalTracer.register(spanWrappingTracer); }
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) throws Exception { alertSender = new AlertSender(initArguments.getConfiguration()); CorePlugin corePlugin = initArguments.getPlugin(CorePlugin.class); if (!corePlugin.getElasticsearchUrls().isEmpty()) { incidentRepository = new ElasticsearchIncidentRepository(corePlugin.getElasticsearchClient()); } else { incidentRepository = new ConcurrentMapIncidentRepository(); } logger.info("Using {} for storing incidents.", incidentRepository.getClass().getSimpleName()); thresholdMonitoringReporter = ThresholdMonitoringReporter.forRegistry(initArguments.getMetricRegistry()) .alertingPlugin(this) .alertSender(alertSender) .incidentRepository(incidentRepository) .measurementSession(initArguments.getMeasurementSession()) .build(); thresholdMonitoringReporter.start(checkFrequency.getValue(), TimeUnit.SECONDS); SlaCheckCreatingClassPathScanner.onStart(initArguments.getMeasurementSession()); }
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) { initArguments.getMetricRegistry().registerAll(Metric2Set.Converter.convert(new GarbageCollectorMetricSet(), new MetricNameConverter() { @Override public MetricName convert(String name) { initArguments.getMetricRegistry().registerAll(Metric2Set.Converter.convert(new MemoryUsageGaugeSet(), new MetricNameConverter() { @Override public MetricName convert(String name) { cpuWatch = new CpuUtilisationWatch(); cpuWatch.start(); initArguments.getMetricRegistry().register(name("jvm_process_cpu_usage").build(), new Gauge<Float>() { @Override public Float getValue() {
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) { initArguments.getMetricRegistry().registerAll(Metric2Set.Converter.convert(new GarbageCollectorMetricSet(), new MetricNameConverter() { @Override public MetricName convert(String name) { initArguments.getMetricRegistry().registerAll(Metric2Set.Converter.convert(new MemoryUsageGaugeSet(), new MetricNameConverter() { @Override public MetricName convert(String name) { cpuWatch = new CpuUtilisationWatch(); cpuWatch.start(); initArguments.getMetricRegistry().register(name("jvm_process_cpu_usage").build(), new Gauge<Float>() { @Override public Float getValue() {
initArguments.getMetricRegistry().registerAll(init(new CpuMetricSet(sigar, sigar.getCpuInfoList()[0]))); initArguments.getMetricRegistry().registerAll(init(new MemoryMetricSet(sigar))); initArguments.getMetricRegistry().registerAll(init(new SwapMetricSet(sigar))); initArguments.getMetricRegistry().registerAll(init(new NetworkMetricSet(ifname, sigar))); final FileSystem fs = e.getValue(); if (fs.getType() == FileSystem.TYPE_LOCAL_DISK || fs.getType() == FileSystem.TYPE_NETWORK) { initArguments.getMetricRegistry().registerAll(init(new FileSystemMetricSet(e.getKey(), sigar)));
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) { registerPooledResources(initArguments.getMetricRegistry(), tomcatThreadPools()); final CorePlugin corePlugin = initArguments.getPlugin(CorePlugin.class); ElasticsearchClient elasticsearchClient = corePlugin.getElasticsearchClient(); if (corePlugin.isReportToGraphite()) { elasticsearchClient.sendGrafana1DashboardAsync("grafana/Grafana1GraphiteServer.json"); elasticsearchClient.sendGrafana1DashboardAsync("grafana/Grafana1GraphiteKPIsOverTime.json"); } if (corePlugin.isReportToElasticsearch()) { final GrafanaClient grafanaClient = corePlugin.getGrafanaClient(); elasticsearchClient.sendClassPathRessourceBulkAsync("kibana/ApplicationServer.bulk"); grafanaClient.sendGrafanaDashboardAsync("grafana/ElasticsearchApplicationServer.json"); } }
initArguments.getMetricRegistry().registerAll(init(new CpuMetricSet(sigar, sigar.getCpuInfoList()[0]))); initArguments.getMetricRegistry().registerAll(init(new MemoryMetricSet(sigar))); initArguments.getMetricRegistry().registerAll(init(new SwapMetricSet(sigar))); initArguments.getMetricRegistry().registerAll(init(new NetworkMetricSet(ifname, sigar))); final FileSystem fs = e.getValue(); if (fs.getType() == FileSystem.TYPE_LOCAL_DISK || fs.getType() == FileSystem.TYPE_NETWORK) { initArguments.getMetricRegistry().registerAll(init(new FileSystemMetricSet(e.getKey(), sigar)));
@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"); }
protected AsyncReporter.Builder getZipkinReporterBuilder(StagemonitorPlugin.InitArguments initArguments) { final ZipkinPlugin zipkinPlugin = initArguments.getPlugin(ZipkinPlugin.class); final AsyncReporter.Builder reporterBuilder = AsyncReporter .builder(getSender(zipkinPlugin)) .messageTimeout(zipkinPlugin.getZipkinFlushInterval(), TimeUnit.MILLISECONDS); final Integer zipkinMaxQueuedBytes = zipkinPlugin.getZipkinMaxQueuedBytes(); if (zipkinMaxQueuedBytes != null) { reporterBuilder.queuedMaxBytes(zipkinMaxQueuedBytes); } if (initArguments.getPlugin(CorePlugin.class).isInternalMonitoringActive()) { reporterBuilder.metrics(new StagemonitorReporterMetrics(initArguments.getMetricRegistry())); } return reporterBuilder; }
@Override public void initializePlugin(StagemonitorPlugin.InitArguments initArguments) { initPasswordChecker(initArguments.getConfiguration()); registerPooledResources(initArguments.getMetricRegistry(), tomcatThreadPools()); final CorePlugin corePlugin = initArguments.getPlugin(CorePlugin.class); corePlugin.getGrafanaClient().sendGrafanaDashboardAsync("grafana/ElasticsearchApplicationServer.json"); initClientSpanExtensions(initArguments.getConfiguration()); }