Merge pull request #474 from hnyman/entropy-1505
for-15.05 statistics: Backport entropy support, config cleanup, init scripts cleanup
This commit is contained in:
commit
30f6fe82af
7 changed files with 166 additions and 144 deletions
|
@ -30,6 +30,7 @@ function index()
|
|||
disk = _("Disk Usage"),
|
||||
dns = _("DNS"),
|
||||
email = _("Email"),
|
||||
entropy = _("Entropy"),
|
||||
exec = _("Exec"),
|
||||
interface = _("Interfaces"),
|
||||
iptables = _("Firewall"),
|
||||
|
@ -53,7 +54,7 @@ function index()
|
|||
-- our collectd menu
|
||||
local collectd_menu = {
|
||||
output = { "csv", "network", "rrdtool", "unixsock" },
|
||||
system = { "cpu", "df", "disk", "email", "exec", "irq", "load", "memory", "nut", "processes", "uptime" },
|
||||
system = { "cpu", "df", "disk", "email", "entropy", "exec", "irq", "load", "memory", "nut", "processes", "uptime" },
|
||||
network = { "conntrack", "dns", "interface", "iptables", "netlink", "olsrd", "ping", "splash_leases", "tcpconns", "iwinfo" }
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
-- Copyright 2015 Hannu Nyman <hannu.nyman@iki.fi>
|
||||
-- Licensed to the public under the Apache License 2.0.
|
||||
|
||||
m = Map("luci_statistics",
|
||||
translate("Entropy Plugin Configuration"),
|
||||
translate("The entropy plugin collects statistics about the available entropy."))
|
||||
|
||||
s = m:section( NamedSection, "collectd_entropy", "luci_statistics" )
|
||||
|
||||
enable = s:option( Flag, "enable", translate("Enable this plugin") )
|
||||
enable.default = 0
|
||||
|
||||
return m
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
-- Copyright 2015 Hannu Nyman <hannu.nyman@iki.fi>
|
||||
-- Licensed to the public under the Apache License 2.0.
|
||||
|
||||
module("luci.statistics.rrdtool.definitions.entropy", package.seeall)
|
||||
|
||||
function rrdargs( graph, plugin, plugin_instance, dtype )
|
||||
|
||||
return {
|
||||
title = "%H: Available entropy",
|
||||
vlabel = "bits",
|
||||
number_format = "%4.0lf",
|
||||
data = {
|
||||
types = { "entropy" },
|
||||
options = { entropy = { title = "Entropy %di" } }
|
||||
}
|
||||
}
|
||||
|
||||
end
|
||||
|
|
@ -1,143 +1,153 @@
|
|||
config 'statistics' 'rrdtool'
|
||||
option 'default_timespan' '1hour'
|
||||
option 'image_width' '600'
|
||||
option 'image_path' '/tmp/rrdimg'
|
||||
# general settings
|
||||
|
||||
config 'statistics' 'collectd'
|
||||
option 'BaseDir' '/var/run/collectd'
|
||||
option 'Include' '/etc/collectd/conf.d'
|
||||
option 'PIDFile' '/var/run/collectd.pid'
|
||||
option 'PluginDir' '/usr/lib/collectd'
|
||||
option 'TypesDB' '/usr/share/collectd/types.db'
|
||||
option 'Interval' '30'
|
||||
option 'ReadThreads' '2'
|
||||
config statistics 'collectd'
|
||||
option BaseDir '/var/run/collectd'
|
||||
option Include '/etc/collectd/conf.d'
|
||||
option PIDFile '/var/run/collectd.pid'
|
||||
option PluginDir '/usr/lib/collectd'
|
||||
option TypesDB '/usr/share/collectd/types.db'
|
||||
option Interval '30'
|
||||
option ReadThreads '2'
|
||||
|
||||
config 'statistics' 'collectd_ping'
|
||||
option 'enable' '0'
|
||||
option 'TTL' '127'
|
||||
option 'Interval' '30'
|
||||
option 'Hosts' '127.0.0.1'
|
||||
config statistics 'rrdtool'
|
||||
option default_timespan '1hour'
|
||||
option image_width '600'
|
||||
option image_path '/tmp/rrdimg'
|
||||
|
||||
config 'statistics' 'collectd_csv'
|
||||
option 'enable' '0'
|
||||
option 'StoreRates' '0'
|
||||
option 'DataDir' '/tmp'
|
||||
# output plugins
|
||||
|
||||
config 'statistics' 'collectd_df'
|
||||
option 'enable' '0'
|
||||
option 'Devices' '/dev/mtdblock/4'
|
||||
option 'MountPoints' '/jffs'
|
||||
option 'FSTypes' 'tmpfs'
|
||||
option 'IgnoreSelected' '0'
|
||||
config statistics 'collectd_rrdtool'
|
||||
option enable '1'
|
||||
option DataDir '/tmp/rrd'
|
||||
option RRARows '100'
|
||||
option RRASingle '1'
|
||||
option RRATimespans '1hour 1day 1week 1month 1year'
|
||||
|
||||
config 'statistics' 'collectd_disk'
|
||||
option 'enable' '0'
|
||||
option 'Disks' 'hda1 hdb'
|
||||
option 'IgnoreSelected' '0'
|
||||
config statistics 'collectd_csv'
|
||||
option enable '0'
|
||||
option StoreRates '0'
|
||||
option DataDir '/tmp'
|
||||
|
||||
config 'statistics' 'collectd_dns'
|
||||
option 'enable' '0'
|
||||
option 'Interfaces' 'ffdhcp ff br-lan'
|
||||
option 'IgnoreSources' '127.0.0.1'
|
||||
config statistics 'collectd_email'
|
||||
option enable '0'
|
||||
option SocketFile '/var/run/collectd/email.sock'
|
||||
option SocketGroup 'nogroup'
|
||||
|
||||
config 'statistics' 'collectd_email'
|
||||
option 'enable' '0'
|
||||
option 'SocketFile' '/var/run/collectd/email.sock'
|
||||
option 'SocketGroup' 'nogroup'
|
||||
config statistics 'collectd_logfile'
|
||||
option enable '0'
|
||||
option LogLevel 'notice'
|
||||
option File '/var/log/collectd.log'
|
||||
option Timestamp '1'
|
||||
|
||||
config 'statistics' 'collectd_exec'
|
||||
option 'enable' '0'
|
||||
config statistics 'collectd_network'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_interface'
|
||||
option 'enable' '1'
|
||||
option 'Interfaces' 'br-lan br-ff'
|
||||
option 'IgnoreSelected' '0'
|
||||
config statistics 'collectd_unixsock'
|
||||
option enable '0'
|
||||
option SocketFile '/var/run/collectd/query.sock'
|
||||
option SocketGroup 'nogroup'
|
||||
|
||||
config 'statistics' 'collectd_iptables'
|
||||
option 'enable' '1'
|
||||
# input plugins
|
||||
|
||||
config 'collectd_iptables_match'
|
||||
option 'table' 'nat'
|
||||
option 'chain' 'luci_fw_postrouting'
|
||||
option 'target' 'MASQUERADE'
|
||||
option 'source' '192.168.1.0/24'
|
||||
option 'outputif' 'br-ff'
|
||||
option 'name' 'Verkehr LAN-Clients'
|
||||
config statistics 'collectd_conntrack'
|
||||
option enable '0'
|
||||
|
||||
config 'collectd_iptables_match'
|
||||
option 'chain' 'luci_fw_postrouting'
|
||||
option 'table' 'nat'
|
||||
option 'target' 'MASQUERADE'
|
||||
option 'source' '10.61.230.0/24'
|
||||
option 'outputif' 'br-ff'
|
||||
option 'name' 'Verkehr WLAN-Clients'
|
||||
config statistics 'collectd_cpu'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_irq'
|
||||
option 'enable' '0'
|
||||
option 'Irqs' '2 3 4 7'
|
||||
config statistics 'collectd_df'
|
||||
option enable '0'
|
||||
option Devices '/dev/mtdblock/4'
|
||||
option MountPoints '/jffs'
|
||||
option FSTypes 'tmpfs'
|
||||
option IgnoreSelected '0'
|
||||
|
||||
config 'statistics' 'collectd_load'
|
||||
option 'enable' '1'
|
||||
config statistics 'collectd_disk'
|
||||
option enable '0'
|
||||
option Disks 'hda1 hdb'
|
||||
option IgnoreSelected '0'
|
||||
|
||||
config 'statistics' 'collectd_logfile'
|
||||
option 'enable' '0'
|
||||
option 'LogLevel' 'notice'
|
||||
option 'File' '/var/log/collectd.log'
|
||||
option 'Timestamp' '1'
|
||||
config statistics 'collectd_dns'
|
||||
option enable '0'
|
||||
option Interfaces 'br-lan'
|
||||
option IgnoreSources '127.0.0.1'
|
||||
|
||||
config 'statistics' 'collectd_netlink'
|
||||
option 'enable' '0'
|
||||
option 'IgnoreSelected' '0'
|
||||
option 'VerboseInterfaces' 'br-lan br-ff'
|
||||
option 'QDiscs' 'br-lan br-ff'
|
||||
config statistics 'collectd_entropy'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_network'
|
||||
option 'enable' '0'
|
||||
config statistics 'collectd_exec'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_processes'
|
||||
option 'enable' '1'
|
||||
option 'Processes' 'uhttpd dnsmasq dropbear'
|
||||
config statistics 'collectd_interface'
|
||||
option enable '1'
|
||||
option Interfaces 'br-lan'
|
||||
option IgnoreSelected '0'
|
||||
|
||||
config statistics 'collectd_splash_leases'
|
||||
option enable '1'
|
||||
config statistics 'collectd_iptables'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_tcpconns'
|
||||
option 'enable' '1'
|
||||
option 'ListeningPorts' '0'
|
||||
option 'LocalPorts' '22 80'
|
||||
config collectd_iptables_match
|
||||
option table 'nat'
|
||||
option chain 'luci_fw_postrouting'
|
||||
option target 'MASQUERADE'
|
||||
option source '192.168.1.0/24'
|
||||
option outputif 'br-ff'
|
||||
option name 'LAN-Clients traffic'
|
||||
|
||||
config 'statistics' 'collectd_unixsock'
|
||||
option 'enable' '0'
|
||||
option 'SocketFile' '/var/run/collectd/query.sock'
|
||||
option 'SocketGroup' 'nogroup'
|
||||
config collectd_iptables_match
|
||||
option chain 'luci_fw_postrouting'
|
||||
option table 'nat'
|
||||
option target 'MASQUERADE'
|
||||
option source '10.61.230.0/24'
|
||||
option outputif 'br-ff'
|
||||
option name 'WLAN-Clients traffic'
|
||||
|
||||
config 'statistics' 'collectd_cpu'
|
||||
option 'enable' '1'
|
||||
config statistics 'collectd_irq'
|
||||
option enable '0'
|
||||
option Irqs '2 3 4 7'
|
||||
|
||||
config 'statistics' 'collectd_rrdtool'
|
||||
option 'enable' '1'
|
||||
option 'DataDir' '/tmp/rrd'
|
||||
option 'RRARows' '100'
|
||||
option 'RRASingle' '1'
|
||||
option 'RRATimespans' '1hour 1day 1week 1month 1year'
|
||||
config statistics 'collectd_iwinfo'
|
||||
option enable '1'
|
||||
|
||||
config 'statistics' 'collectd_memory'
|
||||
option 'enable' '1'
|
||||
config statistics 'collectd_load'
|
||||
option enable '1'
|
||||
|
||||
config 'statistics' 'collectd_conntrack'
|
||||
option 'enable' '1'
|
||||
config statistics 'collectd_memory'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_olsrd'
|
||||
option 'enable' '1'
|
||||
option 'Port' '2006'
|
||||
option 'Host' '127.0.0.1'
|
||||
config statistics 'collectd_netlink'
|
||||
option enable '0'
|
||||
option IgnoreSelected '0'
|
||||
option VerboseInterfaces 'br-lan'
|
||||
option QDiscs 'br-lan'
|
||||
|
||||
config 'statistics' 'collectd_iwinfo'
|
||||
option 'enable' '1'
|
||||
config statistics 'collectd_nut'
|
||||
option enable '0'
|
||||
option UPS 'myupsname'
|
||||
|
||||
config 'statistics' 'collectd_nut'
|
||||
option 'enable' '0'
|
||||
option 'UPS' 'myupsname'
|
||||
config statistics 'collectd_olsrd'
|
||||
option enable '0'
|
||||
option Port '2006'
|
||||
option Host '127.0.0.1'
|
||||
|
||||
config statistics 'collectd_ping'
|
||||
option enable '0'
|
||||
option TTL '127'
|
||||
option Interval '30'
|
||||
option Hosts '127.0.0.1'
|
||||
|
||||
config statistics 'collectd_processes'
|
||||
option enable '0'
|
||||
option Processes 'uhttpd dnsmasq dropbear'
|
||||
|
||||
config statistics 'collectd_splash_leases'
|
||||
option enable '0'
|
||||
|
||||
config statistics 'collectd_tcpconns'
|
||||
option enable '0'
|
||||
option ListeningPorts '0'
|
||||
option LocalPorts '22 80'
|
||||
|
||||
config statistics 'collectd_uptime'
|
||||
option enable '0'
|
||||
|
||||
config 'statistics' 'collectd_uptime'
|
||||
option 'enable' '1'
|
||||
|
|
|
@ -3,23 +3,15 @@ START=79
|
|||
|
||||
start() {
|
||||
### replace shipped config with symlink
|
||||
mkdir -p /var/etc
|
||||
if [ ! -L /etc/collectd.conf ]; then
|
||||
test -f /etc/collectd.conf && mv /etc/collectd.conf /etc/collectd.conf.bak
|
||||
ln -s /var/etc/collectd.conf /etc/collectd.conf
|
||||
fi
|
||||
|
||||
### create config
|
||||
mkdir -p /var/etc
|
||||
/usr/bin/stat-genconfig > /var/etc/collectd.conf
|
||||
|
||||
### prepare rrdimg directory
|
||||
if [ -f /etc/config/lucid ] && [ -x /etc/init.d/lucid ] && /etc/init.d/lucid enabled && \
|
||||
[ "$(uci get luci_statistics.rrdtool.image_path 2>/dev/null)" != "$(uci get lucid.statistics.physical 2>/dev/null)" ]; then
|
||||
uci set lucid.statistics.physical=$(uci get luci_statistics.rrdtool.image_path)
|
||||
uci commit lucid
|
||||
/etc/init.d/lucid restart
|
||||
fi
|
||||
|
||||
### workaround broken permissions on /tmp
|
||||
chmod 1777 /tmp
|
||||
}
|
||||
|
|
|
@ -8,29 +8,9 @@ uci -q batch <<-EOF >/dev/null
|
|||
commit ucitrack
|
||||
EOF
|
||||
|
||||
# register LuCId virtual path handler
|
||||
[ -f /etc/config/lucid ] && \
|
||||
uci -q batch <<-EOF >/dev/null
|
||||
delete lucid.statistics
|
||||
|
||||
set lucid.statistics=DirectoryPublisher
|
||||
set lucid.statistics.name='RRDTool Image Cache'
|
||||
set lucid.statistics.physical=/tmp/rrdimg
|
||||
set lucid.statistics.virtual=/rrdimg
|
||||
set lucid.statistics.domain=''
|
||||
|
||||
add_list lucid.http.publisher=statistics
|
||||
add_list lucid.https.publisher=statistics
|
||||
|
||||
commit lucid
|
||||
EOF
|
||||
|
||||
# symlink for busybox httpd
|
||||
[ -x /usr/sbin/httpd ] && [ ! -h /www/rrdimg ] && \
|
||||
ln -s /tmp/rrdimg /www/rrdimg
|
||||
|
||||
# restart LuCId service
|
||||
[ -x /etc/init.d/lucid ] && /etc/init.d/lucid enabled && /etc/init.d/lucid restart
|
||||
|
||||
rm -f /tmp/luci-indexcache
|
||||
exit 0
|
||||
|
|
|
@ -303,6 +303,12 @@ plugins = {
|
|||
{ }
|
||||
},
|
||||
|
||||
entropy = {
|
||||
{ },
|
||||
{ },
|
||||
{ }
|
||||
},
|
||||
|
||||
exec = config_exec,
|
||||
|
||||
interface = {
|
||||
|
|
Loading…
Reference in a new issue