1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
-- Copyright 2008 Freifunk Leipzig / Jo-Philipp Wich <jow@openwrt.org>
-- Licensed to the public under the Apache License 2.0.
m = Map("luci_statistics",
translate("Exec Plugin Configuration"),
translate(
"The exec plugin starts external commands to read values " ..
"from or to notify external processes when certain threshold " ..
"values have been reached."
))
-- collectd_exec config section
s = m:section( NamedSection, "collectd_exec", "luci_statistics" )
-- collectd_exec.enable
enable = s:option( Flag, "enable", translate("Enable this plugin") )
enable.default = 0
-- collectd_exec_input config section (Exec directives)
exec = m:section( TypedSection, "collectd_exec_input",
translate("Add command for reading values"),
translate(
"Here you can define external commands which will be " ..
"started by collectd in order to read certain values. " ..
"The values will be read from stdout."
))
exec.addremove = true
exec.anonymous = true
-- collectd_exec_input.cmdline
exec_cmdline = exec:option( Value, "cmdline", translate("Script") )
exec_cmdline.default = "/usr/bin/stat-dhcpusers"
-- collectd_exec_input.cmdline
exec_cmduser = exec:option( Value, "cmduser", translate("User") )
exec_cmduser.default = "nobody"
exec_cmduser.rmempty = true
exec_cmduser.optional = true
-- collectd_exec_input.cmdline
exec_cmdgroup = exec:option( Value, "cmdgroup", translate("Group") )
exec_cmdgroup.default = "nogroup"
exec_cmdgroup.rmempty = true
exec_cmdgroup.optional = true
-- collectd_exec_notify config section (NotifyExec directives)
notify = m:section( TypedSection, "collectd_exec_notify",
translate("Add notification command"),
translate(
"Here you can define external commands which will be " ..
"started by collectd when certain threshold values have " ..
"been reached. The values leading to invokation will be " ..
"feeded to the the called programs stdin."
))
notify.addremove = true
notify.anonymous = true
-- collectd_notify_input.cmdline
notify_cmdline = notify:option( Value, "cmdline", translate("Script") )
notify_cmdline.default = "/usr/bin/stat-dhcpusers"
-- collectd_notify_input.cmdline
notify_cmduser = notify:option( Value, "cmduser", translate("User") )
notify_cmduser.default = "nobody"
notify_cmduser.rmempty = true
notify_cmduser.optional = true
-- collectd_notify_input.cmdline
notify_cmdgroup = notify:option( Value, "cmdgroup", translate("Group") )
notify_cmdgroup.default = "nogroup"
notify_cmdgroup.rmempty = true
notify_cmdgroup.optional = true
return m
|