public void sendMetricDashboardBulkAsync(final String resource) { // skip sending dashboards if init parameter is set to false if (!corePlugin.isInitializeElasticsearch()) { logger.info("skip Elasticsearch init due to stagemonitor.elasticsearch.init=false"); return; } // only send metric dashboards if metrics are reported to elasticsearch if (corePlugin.isReportToElasticsearch()) { sendClassPathRessourceBulkAsync(resource, true); } }
@Override protected void onElasticsearchFirstAvailable(ElasticsearchClient elasticsearchClient) { if (corePlugin.isInitializeElasticsearch()) { if (elasticsearchClient.isElasticsearch6Compatible()) { logger.debug("creating KibanaIndexAndMapping for ES 6..."); elasticsearchClient.createIndexAndSendMapping(".kibana", "doc", IOUtils.getResourceAsStream(elasticsearchClient.getElasticsearchResourcePath() + "kibana-index-doc.json")); logger.debug("created KibanaIndexAndMapping for ES 6"); } else { logger.debug("creating KibanaIndexAndMapping for ES 5..."); createKibana5IndexAndMappings(elasticsearchClient); sendConfigurationMapping(elasticsearchClient); logger.debug("created KibanaIndexAndMapping for ES 5"); } manageMetricsIndex(elasticsearchClient, corePlugin); } elasticsearchClient.scheduleIndexManagement(ElasticsearchReporter.STAGEMONITOR_METRICS_INDEX_PREFIX, corePlugin.getMoveToColdNodesAfterDays(), corePlugin.getDeleteElasticsearchMetricsAfterDays()); reportToElasticsearch(corePlugin.getMetricRegistry(), corePlugin.getElasticsearchReportingInterval(), corePlugin.getMeasurementSession()); }
@Override protected void onElasticsearchFirstAvailable(ElasticsearchClient elasticsearchClient) { if (corePlugin.isInitializeElasticsearch()) { createSpansIndex(elasticsearchClient); final String resourcePath = elasticsearchClient.getElasticsearchResourcePath(); elasticsearchClient.updateKibanaIndexPattern("stagemonitor-spans-*",resourcePath + "stagemonitor-spans-kibana-index-pattern.json"); elasticsearchClient.sendSpanDashboardBulkAsync(resourcePath + "Request-Analysis.bulk", true); elasticsearchClient.sendSpanDashboardBulkAsync(resourcePath + "Web-Analytics.bulk", true); } elasticsearchClient.scheduleIndexManagement("stagemonitor-spans-", corePlugin.getMoveToColdNodesAfterDays(), elasticsearchTracingPlugin.getDeleteSpansAfterDays()); }
@Override protected void onElasticsearchFirstAvailable(ElasticsearchClient elasticsearchClient) { if (corePlugin.isInitializeElasticsearch()) { createSpansIndex(elasticsearchClient); final String resourcePath = elasticsearchClient.getElasticsearchResourcePath(); elasticsearchClient.updateKibanaIndexPattern("stagemonitor-spans-*",resourcePath + "stagemonitor-spans-kibana-index-pattern.json"); elasticsearchClient.sendSpanDashboardBulkAsync(resourcePath + "Request-Analysis.bulk", true); elasticsearchClient.sendSpanDashboardBulkAsync(resourcePath + "Web-Analytics.bulk", true); } elasticsearchClient.scheduleIndexManagement("stagemonitor-spans-", corePlugin.getMoveToColdNodesAfterDays(), elasticsearchTracingPlugin.getDeleteSpansAfterDays()); }