luci-app-statistics: add ipstatistics plugin

Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
Nick Hainke 2021-01-29 11:03:19 +01:00 committed by Hannu Nyman
parent a567b3d47b
commit 6ae138c2fe
4 changed files with 77 additions and 0 deletions

View File

@ -0,0 +1,54 @@
/* Licensed to the public under the Apache License 2.0. */
'use strict';
'require baseclass';
return baseclass.extend({
title: _('IP-Statistics'),
rrdargs: function(graph, host, plugin, plugin_instance, dtype) {
var traffic = {
title: "%H: IPv4 and IPv6 Comparison",
vlabel: "Bytes/s",
number_format: "%5.1lf%sB/s",
totals_format: "%5.1lf%sB",
data: {
sources: {
ip_stats_octets: [ "ip4rx", "ip4tx", "ip6rx", "ip6tx" ]
},
options: {
ip_stats_octets__ip4rx: {
title: "IPv4 Bytes (RX)",
total: true,
color: "00ff00"
},
ip_stats_octets__ip4tx: {
title: "IPv4 Bytes (TX)",
flip : true,
total: true,
color: "0000ff"
},
ip_stats_octets__ip6rx: {
title: "IPv6 Bytes (RX)",
total: true,
color: "ffff00"
},
ip_stats_octets__ip6tx: {
title: "IPv6 Bytes (TX)",
flip : true,
total: true,
color: "ff00ff"
}
}
}
};
return [ traffic ]
}
});

View File

@ -0,0 +1,16 @@
'use strict';
'require baseclass';
'require form';
'require tools.widgets as widgets';
return baseclass.extend({
title: _('IP-Statistics Plugin Configuration'),
description: _('The ipstatistics plugin collects IPv4 and IPv6 statistics to compare them.'),
addFormOptions: function(s) {
var o;
o = s.option(form.Flag, 'enable', _('Enable this plugin'));
o.default = '0';
}
});

View File

@ -123,6 +123,9 @@ config statistics 'collectd_interface'
option Interfaces 'br-lan'
option IgnoreSelected '0'
config statistics 'collectd_ipstatistics'
option enable '0'
config statistics 'collectd_iptables'
option enable '0'

View File

@ -0,0 +1,4 @@
{
"title": "IP-Statistics",
"category": "network"
}