summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-app-statistics/luasrc
AgeCommit message (Collapse)Author
2018-11-14luci-app-statistics: quote : in filenames for DEFKevin Locke
: is used to delimit fields in DEF: rrd instructions, so when it appears in a filename it must be escaped using \.[1] This commit adds the escaping. I discovered the issue after configuring collectd-mod-ping to monitor an IPv6 host (2001:19f0:5:727:5b56:205d:ff55:2208). Accessing https://192.168.0.1/cgi-bin/luci/admin/statistics/graph/ping would cause the following messages to be logged: Wed Nov 14 23:04:33 2018 daemon.err uhttpd[30261]: ERROR: can't parse DEF '2ping_avg_raw=/tmp/rrd/openwrthost/ping/ping-2001:19f0:5:727:5b56:205d:ff55:2208.rrd:value:AVERAGE' -2 Wed Nov 14 23:04:33 2018 daemon.err uhttpd[30261]: ERROR: can't parse DEF '2ping_droprate_avg_raw=/tmp/rrd/openwrthost/ping/ping_droprate-2001:19f0:5:727:5b56:205d:ff55:2208.rrd:value:AVERAGE' -2 and the graphs would not display. After applying this commit, the graphs display correctly and no messages are logged. 1. https://oss.oetiker.ch/rrdtool/doc/rrdgraph_data.en.html#IDEF Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2018-10-13Merge pull request #2209 from jinchizhong/luci-app-statistics-add-curlHannu Nyman
luci-app-statistics: add support for cUrl
2018-10-14pp-statistics: add support for cUrlChizhong Jin
Add collectd-mod-curl plugin support. Which can do some complex track, such as grab stock, but by now, only response time are supported. Signed-off-by: Chizhong Jin <pjincz@gmail.com>
2018-10-12treewide: Fix typos in UI stringsyangfl
Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-10-10treewide: Fix typos in commentsyangfl
Signed-off-by: David Yang <mmyangfl@gmail.com>
2018-04-05treewide: filter shell arguments through shellquote() where applicableJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2018-03-03luci-app-statistics: only graph data supported by APC UPSguidosarducci
Some graph definitions rely on data not supported across all APC UPSes. Due to recent upstream changes in collectd, the daemon no longer creates a NaN-filled .rrd file corresponding to any missing UPS data. Depending on the connected UPS, this may result in some "broken" graphs on the Luci Statistics page since rrdtool cannot find the expected .rrd file. Include the add_supported() function to determine the UPS data available at runtime and update any definitions of graphs to include only supported data. For example, the whole chart stack of AC input and output voltages will normally be "broken" if the UPS only measures AC input voltage. With these changes, the output voltage graph definition is stripped out, allowing the chart to render. Make consistent use of data types and instances in graph definitions. All definitions now use the same format with the 'instances' key. Unnecessary 'types' and 'sources' keys are removed. Fix the definition of 'line frequency' graph, based on upstream collectd apcups plugin code: type is 'frequency' but instance should be 'input'. This also includes some code and whitespace cleanup. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-07-23luci-app-statistics: Voltage graphs - AC and DCbobmseagithub
The Voltage graph combines Battery, Input Voltage and Output Voltage. The Y-Axis scale masks changes in Input/Output voltages over time. This patch splits the graphs into 2 graphs. This makes it possible to see variations in AC Input/Output voltages. Signed-off-by: Bob Meizlik <bobmseagithub@squakmt.com>
2017-07-04luci-app-statistics: add support for apcups pluginguidosarducci
OpenWRT/LEDE support for APC UPSes is only partial: although the collectd apcups plugin is included, related lua/luci code is missing. These changes add the lua side and have been used for ~2 years, both on OpenWRT and LEDE. Reworked from patches submitted by James Klaas to the luci development list in 2015. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
2017-06-10luci-app-statistics: support specifying line width in graph definitionsJo-Philipp Wich
This allows a graph definition to explicitely request LINE1, LINE2 or LINE3 for a data source. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-06-10luci-app-statistics: support graph menu entries without corresponding labelsJo-Philipp Wich
Properly render menu items for plugin instances that do not have a corresponding label defined. This allows for registering new graph pages solely by dropping files into /usr/lib/lua/luci/statistics/rrdtool/definitions/ Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2017-05-10luci-app-statistics: check that uci config sections existHannu Nyman
A missing or faulty luci_statistics config file may prevent LuCI access completely already at the login phase as the statistics config is parsed already then. The error is like: .../statistics/datatree.lua:16: attempt to index upvalue 'sections' (a nil value) User may be completely locked out of LuCI until he figures out the need to have a proper luci_statistics config file. Prevent the error by checking for the existence of the uci config sections before trying to use values from them. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-05-09luci-app-statistics: processes: fix graph visibilityHannu Nyman
Fix graph visibility on processes page based on plugin instance. The overview instance is empty, while monitored processes have their own instances. Original version of the patch created by @koblack and discussed in #1021 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-04-30luci-app-statistics: processes plugin: add labels, correct dataHannu Nyman
Enhance processes statistics page: * add proper labels to graphs * correct RSS memory stats title, add VSZ stats Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-04-29Support for collectd-mod-contextswitchfantom-x
Signed-off-by: Marc Benoit marcb6218@gmail.com
2017-02-13luci-app-statistics: remove non-functional links from graphsHannu Nyman
The statistics graphs on the pages with multiple data sources have contained links to the data sources, but those links have not worked. Remove the links as they are unnecessary. This commit fixes #1006 Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2017-01-23luci-app-statistics: add advice about data directory permissionsHannu Nyman
Add advice about the permissions needed for the data directory: Pages are rendered as user 'nobody', so the *.rrd files, data directory and all its parent directories need to be world readable. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-12-07app-statistics: df: Don't separate disk usage typesDaniel Dickinson
The df plugin wasn't displaying useful lables for the space used vs free vs reserved due to title override. This patch fixes that issues by removing the per-instance setting. Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2016-11-19luci-app-statistics: add support for thermal statsHannu Nyman
Add support for temperature data from collect-mod-thermal Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-11-10luci-app-statistics: adjust cpufreq graph for single/dual-core CPUsHannu Nyman
The original data model definition assumed data from a quad-core CPU, which caused errors with single- and dual-core processors. Adjust the data model to work with also them. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-11-08luci-app-statistics: tweak 'cpufreq' number formattingHannu Nyman
Adjust number formatting to display >1GHz values better. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-11-08luci-app-statistics: add support for CPU frequency scaling statsHannu Nyman
Add support for 'cpufreq' plugin in collectd, which monitors the CPU cores' frequencies. Some platforms enable dynamic frequency scaling according to CPU load. 'cpufreq' plugin can currently be built for x86 and mvebu. (and it should likely be enabled also for ipq806x) Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-10-24Merge pull request #776 from cshore/pull-request-statistics-nutJo-Philipp Wich
luci-app-statistics: nut: Add additional stats some UPSes report
2016-08-13luci-app-statistics: nut: Add additional stats some UPSes reportDaniel Dickinson
Different UPSes report differents stats; here we add graphing of some additional statistics supports by some models. Signed-off-by: Daniel Dickinson <lede@cshore.thecshore.com>
2016-08-11Fix missing title in df graphsArtur Stepniewski
It used data source instance name instead of plugin instance name. Signed-off-by: Artur Stepniewski <artur.stepniewski+openwrt@gmail.com>
2016-05-12luci-app-statistics: option for max/avg data when not rrasingleHannu Nyman
Introduce option that enables the user to select max values instead of averages for graphs if the user has disabled RRAsingle. The option defaults to average values, which have been the default in Luci statistics. Remove 'optional' from RRASingle, as it is a key option for statistics. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2016-05-11Graph the max value rather than avg if rrdsingle disabledKevin Darbyshire-Bryant
With rrdsingle the average values are used for graphing. As the timescale increases (say over a day or month) the average values progressively reduce. Using the maximum value over the longer periods is arguably no less deceptive but it does produce more informative graphs. V2 - Invert the default path logic related to rra.single Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
2016-03-25luci-app-statistics: Fix disk usage graphingDaniel Dickinson
Disk usage graphing was broken. This fixes it. Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com>
2016-02-02luci-app-statistics: Remove usually empty std.dev. graph from ping pageHannu Nyman
Remove the usually empty standard deviation graph from the ping page. The graph is empty for most users as collectd measures standard deviation of individual pings inside the general interval of statistics collection. Default setting for both ping interval and general collection interval is 30s in Luci statistics, meaning just 1 ping per interval, which leads to empty graph. (To provide relveant data, the ping interval should be 1/4-1/5 of the general collection interval. Even then the graph does not look very informative due to different scaling than the latency graph.) Note that this commit does not change collectd itself, which continues to collect and calculate also the std.dev. data, which can be fetched with 'rrdtool' if needed. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-12-15validation: Add option ipv4only option to host and hostport datatypesDaniel Dickinson
Some applications only support ipv4 so add ipv4only option to host and hostport datatypes so that for thos applications that when an IP address is specified only and ipv4 ip address gets accepted.
2015-10-25luci-app-statistics: Adjust ping graphs to show target hosts separatelyHannu Nyman
Ping statistics plugin allows the user to define multiple ping targets. The graphs have so far shown multiple hosts in a stacked way. Adjust graphs to show the target hosts separately (overlay=true). Clarify the plugin definition with some additional line spacing. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-10-25luci-app-statistics: improve scaling of the associated stations graphHannu Nyman
Improve scaling of the associated stations graph on the wireless page. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-10-06Globally convert headline anchors into name attributes.Jo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-05luci-app-statistics: reorder interface, netlink and openvpn datasourcesJo-Philipp Wich
This aligns the order and grouping of RX and TX network datasources. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-05luci-app-statistics: add support for sorting RRD data sourcesJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-05luci-app-statistics: add initial support for collectd-mod-openvpnJo-Philipp Wich
This changeset covers compression and traffic stats, not every combination has been tested yet. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-05luci-app-statistics: add initial support for collect-mod-sensorsJo-Philipp Wich
Due to a lack of a test environment this support only covers thermal graphs so far. Please send the output of "rrdtool info /tmp/rrd/*/sensors-*/*.rrd" if your system happens to support voltage, power or fanspeed sensors. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-03luci-app-statistics: improve diagram generation, add missing titleJo-Philipp Wich
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-03luci-app-statistics: rework graph label handlingJo-Philipp Wich
Remove leftover unused translation code and properly escape colons in line labels. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-10-03luci-app-statistics: only render index view for more than one instanceJo-Philipp Wich
If a plugin produces only one instance, e.g. netlink with just one interface configured, then the controller will register no detail views which would normally show all graphs but the index pacage of a given plugin will still display the collapsed view without any possibility to reach the full listing. Fix the problem by only rendering a linked index view when more than one instance is present. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2015-09-27luci-app-statistics: reorganise menu itemsHannu Nyman
Reorganise the menu items of the Luci statistics module: * Re-label "Collectd" to "Setup" and place it after the "Graphs" items. - "Graphs" is used much more frequently so it should be first. - Change "Collectd" menu item to "Setup" to clarify things. * Re-label "System plugins" to "General plugins" to change sorting. "Network / Output / System" changes to "General / Network / Output" that is more logical order for the items. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-09-22luci/statistics: Fix nut UPS graphsDavid Woodhouse
At some point since I last checked, the nut plugin for collectd changed the names of the timeleft and percent datasets. Update the luci module to match so that those graphs are generated correctly again. Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
2015-09-02statistics: fix typoHannu Nyman
sed -i "s/collected date/collected data/" Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-28statistics: clarify CPU/processor graph by removing "idle" from itHannu Nyman
Clarify the CPU time consumption graph by removing the "idle" data from it. Especially with light traffic, removing "idle" enables the graph to scale better and to properly show the CPU load variations. If "idle" data needs to be seen, it might be added as a second graph below. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-28statistics: clarify stats introductionHannu Nyman
* Clarify the short explanation on the statistics section's front page. * Mention the possibility of additional collectd plugins to get more stats. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-28statistics: entropy plugin - fix placement of entropy.luaHannu Nyman
Move the file entropy.lua to the correct directory. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-27statistics: Add support for entropy statsHannu Nyman
Add statistics on the available entropy. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-24Merge pull request #448 from hnyman/cpulabelChristian Schoenebeck
statistics: cpu graph - add label definitions, add softirq and interrupt stats
2015-08-23statistics: memory plugin - improve graph by better scaling of y-axisHannu Nyman
Utilise alt_autoscale_max to make the memory chart y-axis to scale better for devices with e.g. 128 MB RAM. Also fix the axis min value to 0. Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
2015-08-23statistics: support rrdtool's alt_autoscale and alt_autoscale_max optionsHannu Nyman
Implement support for alternative scaling of the y-axis. By default, rrdtool will autoscale to 1,2,5,10,20,50,100,200,... etc., which is not always suitable (e.g. memory charts for device with 128 MB). Rrdtool 1.0.50 already supports alternative autoscaling that creates a tighter y-axis. Implement graph-level options in Luci statistics to support those boolean options as "alt_autoscale" and "alt_autoscale_max". info at http://oss.oetiker.ch/rrdtool/doc/rrdgraph.en.html Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>