Reorder the CPU utilization classes to be in a more logical order (from hardware toward user) instead of alphabetical order. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
166 lines
3 KiB
JavaScript
166 lines
3 KiB
JavaScript
/* Licensed to the public under the Apache License 2.0. */
|
|
|
|
'use strict';
|
|
'require baseclass';
|
|
'require uci';
|
|
|
|
return baseclass.extend({
|
|
title: _('Processor'),
|
|
|
|
rrdargs: function(graph, host, plugin, plugin_instance, dtype) {
|
|
var p = [];
|
|
|
|
var title = "%H: Processor usage";
|
|
|
|
if (plugin_instance != '')
|
|
title = "%H: Processor usage on core #%pi";
|
|
|
|
var show_idle = uci.get("luci_statistics", "collectd_cpu", "ShowIdle") == "1" ? true : false;
|
|
|
|
if (uci.get("luci_statistics", "collectd_cpu", "ReportByState") == "1") {
|
|
var cpu = {
|
|
title: title,
|
|
y_min: "0",
|
|
alt_autoscale_max: true,
|
|
vlabel: "Jiffies",
|
|
number_format: "%5.1lf",
|
|
data: {
|
|
instances: {
|
|
cpu: [
|
|
...(show_idle ? ["idle"] : []),
|
|
"nice",
|
|
"user",
|
|
"wait",
|
|
"system",
|
|
"softirq",
|
|
"interrupt",
|
|
"steal"
|
|
]
|
|
},
|
|
options: {
|
|
cpu_idle: {
|
|
color: "ffffff",
|
|
title: "Idle"
|
|
},
|
|
cpu_interrupt: {
|
|
color: "a000a0",
|
|
title: "Interrupt"
|
|
},
|
|
cpu_nice: {
|
|
color: "00e000",
|
|
title: "Nice"
|
|
},
|
|
cpu_softirq: {
|
|
color: "ff00ff",
|
|
title: "Softirq"
|
|
},
|
|
cpu_steal: {
|
|
color: "000000",
|
|
title: "Steal"
|
|
},
|
|
cpu_system: {
|
|
color: "ff0000",
|
|
title: "System"
|
|
},
|
|
cpu_user: {
|
|
color: "0000ff",
|
|
title: "User"
|
|
},
|
|
cpu_wait: {
|
|
color: "ffb000",
|
|
title: "Wait I/O"
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
var percent = {
|
|
title: title,
|
|
y_min: "0",
|
|
alt_autoscale_max: true,
|
|
vlabel: "Percent",
|
|
number_format: "%5.1lf%%",
|
|
data: {
|
|
instances: {
|
|
percent: [
|
|
...(show_idle ? ["idle"] : []),
|
|
"nice",
|
|
"user",
|
|
"wait",
|
|
"system",
|
|
"softirq",
|
|
"interrupt",
|
|
"steal"
|
|
]
|
|
},
|
|
options: {
|
|
percent_idle: {
|
|
color: "ffffff",
|
|
title: "Idle"
|
|
},
|
|
percent_interrupt: {
|
|
color: "a000a0",
|
|
title: "Interrupt"
|
|
},
|
|
percent_nice: {
|
|
color: "00e000",
|
|
title: "Nice"
|
|
},
|
|
percent_softirq: {
|
|
color: "ff00ff",
|
|
title: "Softirq"
|
|
},
|
|
percent_steal: {
|
|
color: "000000",
|
|
title: "Steal"
|
|
},
|
|
percent_system: {
|
|
color: "ff0000",
|
|
title: "System"
|
|
},
|
|
percent_user: {
|
|
color: "0000ff",
|
|
title: "User"
|
|
},
|
|
percent_wait: {
|
|
color: "ffb000",
|
|
title: "Wait I/O"
|
|
}
|
|
}
|
|
}
|
|
};
|
|
|
|
var types = graph.dataTypes(host, plugin, plugin_instance);
|
|
|
|
for (var i = 0; i < types.length; i++)
|
|
if (types[i] == 'cpu')
|
|
p.push(cpu);
|
|
else if (types[i] == 'percent')
|
|
p.push(percent);
|
|
}
|
|
else {
|
|
p = {
|
|
title: title,
|
|
y_min: "0",
|
|
alt_autoscale_max: true,
|
|
vlabel: "Percent",
|
|
number_format: "%5.1lf%%",
|
|
data: {
|
|
instances: {
|
|
percent: [
|
|
"active",
|
|
]
|
|
},
|
|
options: {
|
|
percent_active: {
|
|
color: "00e000",
|
|
title: "Active"
|
|
}
|
|
}
|
|
}
|
|
};
|
|
}
|
|
|
|
return p;
|
|
}
|
|
});
|