monitor-service: Fix ordering of applications in the dashboard

This commit is contained in:
2025-08-22 04:24:48 +02:00
parent e13522ea35
commit 45117e84ee

View File

@@ -658,21 +658,31 @@ JSON_DATA_PLACEHOLDER
const filteredData = getFilteredData(); const filteredData = getFilteredData();
// Group by process // Group by process
const processData = {}; const processDataMap = {};
filteredData.forEach(item => { filteredData.forEach(item => {
if (!processData[item.process_name]) { if (!processDataMap[item.process_name]) {
processData[item.process_name] = { processDataMap[item.process_name] = {
download: 0, download: 0,
upload: 0 upload: 0
}; };
} }
processData[item.process_name].download += item.bytes_received; processDataMap[item.process_name].download += item.bytes_received;
processData[item.process_name].upload += item.bytes_sent; processDataMap[item.process_name].upload += item.bytes_sent;
}); });
var processData = [];
Object.keys(processDataMap).forEach(key => {
processData.push({
process_name: key,
download: processDataMap[key].download,
upload: processDataMap[key].upload
});
});
processData = processData.sort((a, b) => (b.download + b.upload) - (a.download + a.upload) );
const processDataTop = processData.slice(0, 15); // Top 15
const labels = Object.keys(processData).slice(0, 15); // Top 15 const labels = processDataTop.map(item => item.process_name);
const downloadData = labels.map(label => processData[label].download); const downloadData = processDataTop.map(item => item.download);
const uploadData = labels.map(label => processData[label].upload); const uploadData = processDataTop.map(item => item.upload);
if (charts.appTraffic) charts.appTraffic.destroy(); if (charts.appTraffic) charts.appTraffic.destroy();