* luci: add memory status patches from soma

This commit is contained in:
Jo-Philipp Wich 2008-07-14 15:54:53 +00:00
parent bd3d207081
commit 426f12416d
6 changed files with 89 additions and 19 deletions

View file

@ -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 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 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 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

View file

@ -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()

View file

@ -14,4 +14,8 @@ node = [[Knoten]]
note = [[Notiz]]
phone = [[Telefon]]
ram = [[Hauptspeicher]]
free = [[Frei]]
buffers = [[Buffers]]
cached = [[Cached]]
total = [[Gesamt]]
geocoord = [[Geokoordinaten]]

View file

@ -20,15 +20,21 @@ $Id$
<table cellspacing="0" cellpadding="6" class="smalltext">
<tr>
<th><%:system_type%>:</th>
<td><%=s%></td>
<td><%=system%></td>
</tr>
<tr>
<th><%:cpu%>:</th>
<td><%=m%></td>
<td><%=model%></td>
</tr>
<tr>
<th><%:ram%>:</th>
<td><%=r%></td>
<th><%:ram%>:<br /><small><%:total%>/<%:cached%>/<%:buffers%>/<%:free%></small></th>
<td><%=memtotal%> / <%=memcached%> / <%=membuffers%> / <%=memfree%> KB<br />
<div id="memorybar">
<div id="memfree" style="width:<%=perc_memfree%>%"></div>
<div id="membuffers" style="width:<%=perc_membuffers%>%"></div>
<div id="memcached" style="width:<%=perc_memcached%>%"></div>
</div>
</td>
</tr>
</table>
<br /><br />

View file

@ -294,4 +294,30 @@ code {
.ok {
color: green;
font-weight: bold;
}
}
#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;
}

View file

@ -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%;
}