From 42a060a85255ac7e4ee33f5c16d3434c12a8f8fb Mon Sep 17 00:00:00 2001 From: Florian Eckert Date: Thu, 7 Mar 2019 10:26:12 +0100 Subject: [PATCH] luci-app-statistics: Diskfree graph show also percent view The Diskfree (df) plugin could also collect the values in percent if the option "ValuesPercentage" is set in the collectd configuration. This commit will check if "df_complex" / "percent_bytes" or both are collected by collectd and so will show the corrsponding graph. Signed-off-by: Florian Eckert --- .../statistics/rrdtool/definitions/df.lua | 49 ++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua index b5633c15ff..7a69e85ee5 100644 --- a/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua +++ b/applications/luci-app-statistics/luasrc/statistics/rrdtool/definitions/df.lua @@ -5,7 +5,7 @@ module("luci.statistics.rrdtool.definitions.df", package.seeall) function rrdargs( graph, plugin, plugin_instance, dtype ) - return { + local df_complex = { title = "%H: Disk space usage on %pi", vlabel = "Bytes", number_format = "%5.1lf%sB", @@ -36,4 +36,51 @@ function rrdargs( graph, plugin, plugin_instance, dtype ) } } } + + local percent_bytes = { + title = "%H: Disk space usage on %pi", + vlabel = "Percent", + number_format = "%5.2lf %%", + + data = { + instances = { + percent_bytes = { "free", "used", "reserved" } + }, + + options = { + percent_bytes_free = { + color = "00ff00", + overlay = false, + title = "free" + }, + + percent_bytes_used = { + color = "ff0000", + overlay = false, + title = "used" + }, + + percent_bytes_reserved = { + color = "0000ff", + overlay = false, + title = "reserved" + } + } + } + } + + local types = graph.tree:data_types( plugin, plugin_instance ) + + local p = {} + for _, t in ipairs(types) do + if t == "percent_bytes" then + p[#p+1] = percent_bytes + end + + if t == "df_complex" then + p[#p+1] = df_complex + end + end + + return p end -- 2.30.2