in lib/perf-top/metrics/util/generate-data.js [288:309]
function removeStaleData(metricData, dataTimestamp) {
for (var nodeName in metricData) {
// Initialize or update `dataTimestamp`
if (nodeName in dataTimestamp) {
if (metricData[nodeName].timestamp > dataTimestamp[nodeName].timestamp) {
dataTimestamp[nodeName] = { counter: 0, timestamp: metricData[nodeName].timestamp};
} else {
dataTimestamp[nodeName].counter++;
}
} else {
dataTimestamp[nodeName] = { counter: 0, timestamp: metricData[nodeName].timestamp};
}
// Remove data that has not been updated for 3 iterations
if (dataTimestamp[nodeName].counter >= 3) {
console.error(`Data for node '${nodeName}' has not been updated for ` +
`${dataTimestamp[nodeName].counter} iterations.` +
` Last updated timestamp was ${dataTimestamp[nodeName].timestamp}.` +
` Removing the data from the dashboard.`);
delete metricData[nodeName];
}
}
}