private void updateAllMetricGroups(ProcessGroupStatus processGroupStatus) { final List<ProcessorStatus> processorStatuses = new ArrayList<>(); populateProcessorStatuses(processGroupStatus, processorStatuses); for (final ProcessorStatus processorStatus : processorStatuses) { updateMetrics( metricsService.getProcessorMetrics(processorStatus), Optional.of(processorStatus.getName()), defaultTags); } final List<ConnectionStatus> connectionStatuses = new ArrayList<>(); populateConnectionStatuses(processGroupStatus, connectionStatuses); for (ConnectionStatus connectionStatus : connectionStatuses) { Map<String, String> connectionStatusTags = new HashMap<>(defaultTags); connectionStatusTags.putAll(metricsService.getConnectionStatusTags(connectionStatus)); updateMetrics( metricsService.getConnectionStatusMetrics(connectionStatus), Optional.<String>absent(), connectionStatusTags); } final List<PortStatus> inputPortStatuses = new ArrayList<>(); populateInputPortStatuses(processGroupStatus, inputPortStatuses); for (PortStatus portStatus : inputPortStatuses) { Map<String, String> portTags = new HashMap<>(defaultTags); portTags.putAll(metricsService.getPortStatusTags(portStatus)); updateMetrics( metricsService.getPortStatusMetrics(portStatus), Optional.<String>absent(), portTags); } final List<PortStatus> outputPortStatuses = new ArrayList<>(); populateOutputPortStatuses(processGroupStatus, outputPortStatuses); for (PortStatus portStatus : outputPortStatuses) { Map<String, String> portTags = new HashMap<>(defaultTags); portTags.putAll(metricsService.getPortStatusTags(portStatus)); updateMetrics( metricsService.getPortStatusMetrics(portStatus), Optional.<String>absent(), portTags); } updateMetrics( metricsService.getJVMMetrics(virtualMachineMetrics), Optional.<String>absent(), defaultTags); updateMetrics( metricsService.getDataFlowMetrics(processGroupStatus), Optional.<String>absent(), defaultTags); }
@OnScheduled public void setup(final ConfigurationContext context) { metricsService = getMetricsService(); ddMetricRegistryBuilder = getMetricRegistryBuilder(); metricRegistry = getMetricRegistry(); metricsMap = getMetricsMap(); metricsPrefix = METRICS_PREFIX.getDefaultValue(); environment = ENVIRONMENT.getDefaultValue(); virtualMachineMetrics = VirtualMachineMetrics.getInstance(); ddMetricRegistryBuilder .setMetricRegistry(metricRegistry) .setTags(metricsService.getAllTagsList()); }