summaryrefslogtreecommitdiffstats
path: root/templates/systemstatus/systeminfo.html
diff options
context:
space:
mode:
authorSimon Rettberg2015-10-21 13:56:04 +0200
committerSimon Rettberg2015-10-21 13:56:04 +0200
commit19abeccb7a047eecbf74c7aec6e91aa8c45a1f50 (patch)
tree5345c3411a7de5ccb23a694fc414737df52925b5 /templates/systemstatus/systeminfo.html
parentUpdate Circles.js to v0.0.6 (diff)
downloadslx-admin-19abeccb7a047eecbf74c7aec6e91aa8c45a1f50.tar.gz
slx-admin-19abeccb7a047eecbf74c7aec6e91aa8c45a1f50.tar.xz
slx-admin-19abeccb7a047eecbf74c7aec6e91aa8c45a1f50.zip
[systemstatus] Live CPU/mem usage stats
Diffstat (limited to 'templates/systemstatus/systeminfo.html')
-rw-r--r--templates/systemstatus/systeminfo.html30
1 files changed, 27 insertions, 3 deletions
diff --git a/templates/systemstatus/systeminfo.html b/templates/systemstatus/systeminfo.html
index 11076d52..ed4a1532 100644
--- a/templates/systemstatus/systeminfo.html
+++ b/templates/systemstatus/systeminfo.html
@@ -49,7 +49,7 @@
<script type="text/javascript">
{{#cpuLoadOk}}
- Circles.create({
+ var cpuCircle = Circles.create({
id: 'circles-cpuload',
radius: 60,
value: {{{cpuLoad}}},
@@ -61,9 +61,12 @@
wrpClass: 'circles-wrp',
textClass: 'circles-text'
});
+ var lastCpuTotal = {{CpuTotal}};
+ var lastCpuIdle = {{CpuIdle}};
+ var lastCpuPercent = {{cpuLoad}};
{{/cpuLoadOk}}
{{#memTotal}}
- Circles.create({
+ var memCircle = Circles.create({
id: 'circles-mem',
radius: 60,
value: {{{memPercent}}},
@@ -75,7 +78,7 @@
wrpClass: 'circles-wrp',
textClass: 'circles-text'
});
- Circles.create({
+ var swapCircle = Circles.create({
id: 'circles-swap',
radius: 60,
value: {{{swapPercent}}},
@@ -88,4 +91,25 @@
textClass: 'circles-text'
});
{{/memTotal}}
+ function updateSystem() {
+ if (!cpuCircle && !memCircle) return;
+ $.post('?do=SystemStatus&action=SysPoll', { token: TOKEN }, function(data) {
+ if (memCircle && data.MemPercent) memCircle.update(data.MemPercent);
+ if (swapCircle && data.SwapPercent) swapCircle.update(data.SwapPercent);
+ if (cpuCircle && data.CpuIdle) {
+ var total = data.CpuTotal - lastCpuTotal;
+ var load = total - (data.CpuIdle - lastCpuIdle);
+ var percent = Math.round(100 * load / total);
+ cpuCircle.update(percent, Math.abs(percent - lastCpuPercent) < 5 ? 0 : 250);
+ lastCpuTotal = data.CpuTotal;
+ lastCpuIdle = data.CpuIdle;
+ lastCpuPercent = percent;
+ }
+ }, 'json').fail(function(data) {
+ console.log(data);
+ }).always(function() {
+ setTimeout(updateSystem, 1200);
+ });
+ }
+ setTimeout(updateSystem, 1000);
</script>