ProcessorAggregator does aggregation after grouping by these three attributes:
1.
ProcessorAggregator does aggregation after grouping by these three attributes:
1. processorId
2. time section(represented as a index integer)
3. metricName(like sendThroughput)
It assumes for each HistoryMetricsItem, the name follow the format
app[appId].processor[processorId].task[taskId].[metricName]
It parses the name to get processorId and metricName. If the parsing fails, then current
HistoryMetricsItem will be skipped.
ProcessorAggregator does aggregation after grouping by these three attributes: 1. processorId 2. time section(represented as a index integer) 3. metricName(like sendThroughput)
It assumes for each HistoryMetricsItem, the name follow the format app[appId].processor[processorId].task[taskId].[metricName]
It parses the name to get processorId and metricName. If the parsing fails, then current HistoryMetricsItem will be skipped.
This class is optimized for performance.