Collectd 5.9.0 changed the data structure of the cpufreq plugin: CPU cores are now handled as separate plugin instances. There are also new data items per core: * time spent at each frequency * amount of frequency transitions Enable these new data items, but initially hide them behind a new config option "ExtraItems" (default: disabled), as the amount of graphs in multi-core systems could be rather large. Note that the frequencies are not (yet) sorted, so the information value of the time-spent graph is semi-random. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
60 lines
1.3 KiB
Lua
60 lines
1.3 KiB
Lua
-- Licensed to the public under the Apache License 2.0.
|
|
|
|
module("luci.statistics.rrdtool.definitions.cpufreq",package.seeall)
|
|
|
|
local uci = require("luci.model.uci").cursor()
|
|
local extraitems = uci:get("luci_statistics", "collectd_cpufreq", "ExtraItems") or nil
|
|
|
|
function item()
|
|
return luci.i18n.translate("CPU Frequency")
|
|
end
|
|
|
|
function rrdargs( graph, plugin, plugin_instance, dtype )
|
|
|
|
local cpufreq = {
|
|
title = "%H: Processor frequency - core %pi",
|
|
alt_autoscale = true,
|
|
vlabel = "Frequency (Hz)",
|
|
number_format = "%3.2lf%s",
|
|
data = {
|
|
types = {"cpufreq" },
|
|
options = {
|
|
cpufreq = { color = "ff0000", title = "Frequency" },
|
|
}
|
|
}
|
|
}
|
|
|
|
if extraitems then
|
|
|
|
local transitions = {
|
|
title = "%H: Frequency transitions - core %pi",
|
|
alt_autoscale = true,
|
|
vlabel = "Transitions",
|
|
number_format = "%3.2lf%s",
|
|
data = {
|
|
types = { "transitions" },
|
|
options = {
|
|
transitions = { color = "0000ff", title = "Transitions", noarea=true },
|
|
}
|
|
}
|
|
}
|
|
|
|
local percentage = {
|
|
title = "%H: Frequency distribution - core %pi",
|
|
alt_autoscale = true,
|
|
vlabel = "Frequency (Hz)",
|
|
number_format = "%5.2lf%%",
|
|
data = {
|
|
types = { "percent" },
|
|
options = {
|
|
percent = { title = "Frequency %di" },
|
|
}
|
|
}
|
|
}
|
|
|
|
return { cpufreq, transitions, percentage }
|
|
else
|
|
return { cpufreq }
|
|
end
|
|
end
|
|
|