in src/main/java/org/opensearch/performanceanalyzer/collectors/MasterThrottlingMetricsCollector.java [73:115]
public void collectMetrics(long startTime) {
if (!controller.isCollectorEnabled(configOverridesWrapper, getCollectorName())) {
return;
}
try {
long mCurrT = System.currentTimeMillis();
if (OpenSearchResources.INSTANCE.getClusterService() == null
|| OpenSearchResources.INSTANCE.getClusterService().getMasterService()
== null) {
return;
}
if (!isMasterThrottlingFeatureAvailable()) {
LOG.debug("Master Throttling Feature is not available for this domain");
PerformanceAnalyzerApp.WRITER_METRICS_AGGREGATOR.updateStat(
WriterMetrics.MASTER_THROTTLING_COLLECTOR_NOT_AVAILABLE, "", 1);
return;
}
value.setLength(0);
value.append(PerformanceAnalyzerMetrics.getJsonCurrentMilliSeconds())
.append(PerformanceAnalyzerMetrics.sMetricNewLineDelimitor);
value.append(
new MasterThrottlingMetrics(
getRetryingPendingTaskCount(),
getTotalMasterThrottledTaskCount())
.serialize());
saveMetricValues(value.toString(), startTime);
PerformanceAnalyzerApp.WRITER_METRICS_AGGREGATOR.updateStat(
WriterMetrics.MASTER_THROTTLING_COLLECTOR_EXECUTION_TIME,
"",
System.currentTimeMillis() - mCurrT);
} catch (Exception ex) {
PerformanceAnalyzerApp.ERRORS_AND_EXCEPTIONS_AGGREGATOR.updateStat(
ExceptionsAndErrors.MASTER_THROTTLING_COLLECTOR_ERROR, "", 1);
LOG.debug(
"Exception in Collecting Master Throttling Metrics: {} for startTime {}",
() -> ex.toString(),
() -> startTime);
}
}