From 426f12416dd59cd24524fb577bdea8b2e4c440f9 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Mon, 14 Jul 2008 15:54:53 +0000 Subject: [PATCH] * luci: add memory status patches from soma --- libs/core/luasrc/sys.lua | 35 +++++++++++-------- .../luasrc/controller/freifunk/freifunk.lua | 3 +- modules/freifunk/luasrc/i18n/freifunk.de.lua | 4 +++ .../luasrc/view/public_status/index.htm | 14 +++++--- .../htdocs/luci-static/fledermaus/cascade.css | 28 ++++++++++++++- .../luci-static/openwrt.org/cascade.css | 26 ++++++++++++++ 6 files changed, 90 insertions(+), 20 deletions(-) diff --git a/libs/core/luasrc/sys.lua b/libs/core/luasrc/sys.lua index e5f19f20b8..d0195c5daa 100644 --- a/libs/core/luasrc/sys.lua +++ b/libs/core/luasrc/sys.lua @@ -110,22 +110,29 @@ function sysinfo() local c2 = "uname -m 2>/dev/null" local c3 = "cat /proc/cpuinfo|grep model\\ name|cut -d: -f2 2>/dev/null" local c4 = "cat /proc/cpuinfo|grep cpu\\ model|cut -d: -f2 2>/dev/null" - local c5 = "cat /proc/meminfo|grep MemTotal|cut -d: -f2 2>/dev/null" - - local s = luci.util.trim(exec(c1)) - local m = "" - local r = "" - - if s == "" then - s = luci.util.trim(exec(c2)) - m = luci.util.trim(exec(c3)) + local c5 = "cat /proc/meminfo|grep MemTotal|awk {' print $2 '} 2>/dev/null" + local c6 = "cat /proc/meminfo|grep ^Cached|awk {' print $2 '} 2>/dev/null" + local c7 = "cat /proc/meminfo|grep MemFree|awk {' print $2 '} 2>/dev/null" + local c8 = "cat /proc/meminfo|grep Buffers|awk {' print $2 '} 2>/dev/null" + + local system = luci.util.trim(exec(c1)) + local model = "" + local memtotal = luci.util.trim(exec(c5)) + local memcached = luci.util.trim(exec(c6)) + local memfree = luci.util.trim(exec(c7)) + local membuffers = luci.util.trim(exec(c8)) + local perc_memfree = math.floor((memfree/memtotal)*100) + local perc_membuffers = math.floor((membuffers/memtotal)*100) + local perc_memcached = math.floor((memcached/memtotal)*100) + + if system == "" then + system = luci.util.trim(exec(c2)) + model = luci.util.trim(exec(c3)) else - m = luci.util.trim(exec(c4)) + model = luci.util.trim(exec(c4)) end - - r = luci.util.trim(exec(c5)) - - return s, m, r + + return system, model, memtotal, memcached, membuffers, memfree, perc_memfree, perc_membuffers, perc_memcached end -- Reads the syslog diff --git a/modules/freifunk/luasrc/controller/freifunk/freifunk.lua b/modules/freifunk/luasrc/controller/freifunk/freifunk.lua index 78cb92f2a7..351a094482 100644 --- a/modules/freifunk/luasrc/controller/freifunk/freifunk.lua +++ b/modules/freifunk/luasrc/controller/freifunk/freifunk.lua @@ -67,7 +67,8 @@ end function action_status() local data = {} - data.s, data.m, data.r = luci.sys.sysinfo() + data.system, data.model, data.memtotal, data.memcached, data.membuffers, data.memfree, data.perc_memfree, data.perc_membuffers, data.perc_memcached = luci.sys.sysinfo() + data.wifi = luci.sys.wifi.getiwconfig() diff --git a/modules/freifunk/luasrc/i18n/freifunk.de.lua b/modules/freifunk/luasrc/i18n/freifunk.de.lua index e54e9b0271..e662163a4e 100644 --- a/modules/freifunk/luasrc/i18n/freifunk.de.lua +++ b/modules/freifunk/luasrc/i18n/freifunk.de.lua @@ -14,4 +14,8 @@ node = [[Knoten]] note = [[Notiz]] phone = [[Telefon]] ram = [[Hauptspeicher]] +free = [[Frei]] +buffers = [[Buffers]] +cached = [[Cached]] +total = [[Gesamt]] geocoord = [[Geokoordinaten]] \ No newline at end of file diff --git a/modules/freifunk/luasrc/view/public_status/index.htm b/modules/freifunk/luasrc/view/public_status/index.htm index 5789e3ad91..a10f22f431 100644 --- a/modules/freifunk/luasrc/view/public_status/index.htm +++ b/modules/freifunk/luasrc/view/public_status/index.htm @@ -20,15 +20,21 @@ $Id$ - + - + - - + +
<%:system_type%>:<%=s%><%=system%>
<%:cpu%>:<%=m%><%=model%>
<%:ram%>:<%=r%><%:ram%>:
<%:total%>/<%:cached%>/<%:buffers%>/<%:free%>
<%=memtotal%> / <%=memcached%> / <%=membuffers%> / <%=memfree%> KB
+
+
+
+
+
+


diff --git a/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css b/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css index 8f30015f38..89db2e53be 100644 --- a/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css +++ b/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css @@ -294,4 +294,30 @@ code { .ok { color: green; font-weight: bold; -} \ No newline at end of file +} + +#memorybar { + width:200px; + height:9px; + border:1px solid #bbb; + background-color: #262626; +} + +#memfree, #membuffers, #memcached { + float:right; + border:1px solid #262626; + height:7px; +} + +#memfree { + background-color:green; +} + +#membuffers { + background-color:#ffcb05; +} + +#memcached { + background-color:#dc0065; +} + diff --git a/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css b/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css index 824b04ba4b..de3246b2e7 100644 --- a/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css +++ b/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css @@ -354,6 +354,31 @@ td.cbi-section-table-optionals { font-size: 70%; } +#memorybar { + width:200px; + height:8px; + border:1px solid #bbb; + background-color:red +} + +#memfree, #membuffers, #memcached { + float:right; + border:1px solid #bbb; + height:6px; +} + +#memfree { + background-color:green; +} + +#membuffers { + background-color:yellow; +} + +#memcached { + background-color:orange; +} + /* obligatory IE6 Voodoo Code */ * html body { @@ -406,3 +431,4 @@ td.cbi-section-table-optionals { * html div.cbi-value-description { margin-left: 40%; } + -- 2.30.2