123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- --- a/package/feeds/luci/luci-base/root/usr/libexec/rpcd/luci
- +++ b/package/feeds/luci/luci-base/root/usr/libexec/rpcd/luci
- @@ -45,2 +45,29 @@
-
- + getCPUInfo = {
- + call = function()
- + local sys = require "luci.sys"
- + local rv = {}
- + rv.cpufreq = sys.exec("/sbin/cpuinfo")
- + rv.cpufree = (sys.exec("expr 100 - $(top -n 1 | grep 'CPU:' | awk -F '%' '{print$4}' | awk -F ' ' '{print$2}')") or "2.33") .. "%"
- + rv.cpumark = sys.exec("cat /etc/bench.log")
- + return rv
- + end
- + },
- +
- + getEthInfo = {
- + call = function()
- + local sys = require "luci.sys"
- + local result = sys.exec("ethinfo 2>/dev/null")
- + return { result = result }
- + end
- + },
- +
- + getUserInfo = {
- + call = function()
- + local sys = require "luci.sys"
- + local result = sys.exec("cat /proc/net/arp | grep 'br-lan' | grep '0x2' | wc -l")
- + return { result = result }
- + end
- + },
- +
- setLocaltime = {
- --- a/package/feeds/luci/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json
- +++ b/package/feeds/luci/luci-mod-system/root/usr/share/rpcd/acl.d/luci-mod-system.json
- @@ -3,7 +3,7 @@
- "description": "Grant access to system configuration",
- "read": {
- "ubus": {
- - "luci": [ "getInitList", "getLEDs", "getTimezones", "getUSBDevices" ],
- + "luci": [ "getInitList", "getLEDs", "getTimezones", "getUSBDevices", "getCPUInfo", "getEthInfo", "getUserInfo" ],
- "system": [ "info" ]
- },
- "uci": [ "luci", "system" ]
- --- a/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/10_system.js
- +++ b/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/10_system.js
- @@ -15,17 +15,24 @@
-
- +var callCPUInfo = rpc.declare({
- + object: 'luci',
- + method: 'getCPUInfo'
- +});
- +
- return baseclass.extend({
- title: _('System'),
-
- load: function() {
- return Promise.all([
- L.resolveDefault(callSystemBoard(), {}),
- L.resolveDefault(callSystemInfo(), {}),
- + L.resolveDefault(callCPUInfo(), {}),
- fs.lines('/usr/lib/lua/luci/version.lua')
- ]);
- },
-
- render: function(data) {
- var boardinfo = data[0],
- systeminfo = data[1],
- - luciversion = data[2];
- + cpuinfo = data[2],
- + luciversion = data[3];
-
- @@ -54,9 +56,10 @@
- _('Hostname'), boardinfo.hostname,
- - _('Model'), boardinfo.model,
- + _('Model'), boardinfo.model + ' ' + cpuinfo.cpumark,
- _('Architecture'), boardinfo.system,
- _('Firmware Version'), (L.isObject(boardinfo.release) ? boardinfo.release.description + ' / ' : '') + (luciversion || ''),
- _('Kernel Version'), boardinfo.kernel,
- _('Local Time'), datestr,
- _('Uptime'), systeminfo.uptime ? '%t'.format(systeminfo.uptime) : null,
- - _('Load Average'), Array.isArray(systeminfo.load) ? '%.2f, %.2f, %.2f'.format(
- + _('CPU Info'), cpuinfo.cpufreq,
- + _('Load Average'), Array.isArray(systeminfo.load) ? '%.2f, %.2f, %.2f'.format(
- systeminfo.load[0] / 65535.0,
- --- a/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/30_network.js
- +++ b/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/30_network.js
- @@ -2,6 +2,7 @@
- 'require baseclass';
- 'require fs';
- 'require network';
- +'require rpc';
-
- function progressbar(value, max, byte) {
- var vn = parseInt(value) || 0,
- @@ -59,6 +60,11 @@ function renderbox(ifc, ipv6) {
- ]);
- }
-
- +var callUserInfo = rpc.declare({
- + object: 'luci',
- + method: 'getUserInfo'
- +});
- +
- return baseclass.extend({
- title: _('Network'),
-
- @@ -67,7 +73,8 @@ return baseclass.extend({
- fs.trimmed('/proc/sys/net/netfilter/nf_conntrack_count'),
- fs.trimmed('/proc/sys/net/netfilter/nf_conntrack_max'),
- network.getWANNetworks(),
- - network.getWAN6Networks()
- + network.getWAN6Networks(),
- + L.resolveDefault(callUserInfo(), {})
- ]);
- },
-
- @@ -75,7 +82,8 @@ return baseclass.extend({
- var ct_count = +data[0],
- ct_max = +data[1],
- wan_nets = data[2],
- - wan6_nets = data[3];
- + wan6_nets = data[3],
- + userinfo = data[4];
-
- var fields = [
- _('Active Connections'), ct_max ? ct_count : null
- @@ -90,6 +98,10 @@ return baseclass.extend({
- (fields[i + 1] != null) ? progressbar(fields[i + 1], ct_max) : '?'
- ])
- ]));
- + ctstatus.appendChild(E('div', { 'class': 'tr' }, [
- + E('div', { 'class': 'td left' }, _('Online Users')),
- + E('div', { 'class': 'td left' }, userinfo.result)
- + ]));
- }
-
- var netstatus = E('div', { 'class': 'network-status-table' });
- --- a/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/20_memory.js
- +++ b/package/feeds/luci/luci-mod-status/htdocs/luci-static/resources/view/status/include/20_memory.js
- @@ -32,8 +32,7 @@ return baseclass.extend({
- swap = L.isObject(systeminfo.swap) ? systeminfo.swap : {};
-
- var fields = [
- - _('Total Available'), (mem.available) ? mem.available : (mem.total && mem.free && mem.buffered) ? mem.free + mem.buffered : null, mem.total,
- - _('Used'), (mem.total && mem.free) ? (mem.total - mem.free) : null, mem.total,
- + _('Used'), (mem.total && mem.available) ? (mem.total - mem.available) : null, mem.total,
- ];
-
- if (mem.buffered)
- @@ -43,9 +42,9 @@ return baseclass.extend({
- fields.push(_('Cached'), mem.cached, mem.total);
-
- if (swap.total > 0)
- - fields.push(_('Swap free'), swap.free, swap.total);
- + fields.push(_('Swap used'), swap.total - swap.free, swap.total);
-
- - var table = E('table', { 'class': 'table' });
- + var table = E('table', { 'class': 'table memory' });
-
- for (var i = 0; i < fields.length; i += 3) {
- table.appendChild(E('tr', { 'class': 'tr' }, [
|