summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2020-04-27 12:59:12 +0200
committerSimon Rettberg2020-04-27 12:59:12 +0200
commitc7762bc6e87419ba8c71d7b431607393d2370e5c (patch)
tree45f49398ea3baec87cef11bdf9c7df10cf698fa7
parentFix typo in last commit (diff)
downloadslx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.tar.gz
slx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.tar.xz
slx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.zip
[statistics] Track CPU temperature as well
-rw-r--r--modules-available/statistics/api.inc.php6
-rw-r--r--modules-available/statistics/install.inc.php4
-rw-r--r--modules-available/statistics/pages/machine.inc.php7
-rw-r--r--modules-available/statistics/templates/machine-main.html9
4 files changed, 19 insertions, 7 deletions
diff --git a/modules-available/statistics/api.inc.php b/modules-available/statistics/api.inc.php
index b58a18f6..70811b2b 100644
--- a/modules-available/statistics/api.inc.php
+++ b/modules-available/statistics/api.inc.php
@@ -112,7 +112,7 @@ if ($type{0} === '~') {
. ' cpumodel = :cpumodel,'
. ' systemmodel = :systemmodel,'
. ' id44mb = :id44mb,'
- . ' live_tmpsize = 0, live_swapsize = 0, live_memsize = 0, cpuload = 255,'
+ . ' live_tmpsize = 0, live_swapsize = 0, live_memsize = 0, live_cpuload = 255, live_cputemp = 0,'
. ' badsectors = :badsectors,'
. ' data = :data,'
. ' state = :state '
@@ -215,11 +215,11 @@ if ($type{0} === '~') {
}
}
}
- foreach (['memsize', 'tmpsize', 'swapsize', 'memfree', 'tmpfree', 'swapfree', 'cpuload'] as $item) {
+ foreach (['memsize', 'tmpsize', 'swapsize', 'memfree', 'tmpfree', 'swapfree', 'cpuload', 'cputemp'] as $item) {
$liveVal = Request::post($item, false, 'int');
if ($liveVal !== false) {
$strUpdateBoottime .= ' live_' . $item . ' = :_' . $item . ', ';
- if ($item === 'cpuload') {
+ if ($item === 'cpuload' || $item === 'cputemp') {
$liveVal = round($liveVal);
} else {
$liveVal = ceil($liveVal / 1024);
diff --git a/modules-available/statistics/install.inc.php b/modules-available/statistics/install.inc.php
index 1fb70aef..fed9b318 100644
--- a/modules-available/statistics/install.inc.php
+++ b/modules-available/statistics/install.inc.php
@@ -277,8 +277,10 @@ $res[] = tableAddConstraint('setting_machine', 'machineuuid', 'machine', 'machin
if (!tableHasColumn('machine', 'live_cpuload')) {
$ret = Database::exec("ALTER TABLE `machine`
ADD COLUMN `live_cpuload` tinyint(3) UNSIGNED NOT NULL DEFAULT '255' AFTER `live_memfree`,
+ ADD COLUMN `live_cputemp` tinyint(3) UNSIGNED NOT NULL DEFAULT '0' AFTER `live_cpuload`,
ADD COLUMN `standbysem` tinyint(3) UNSIGNED NOT NULL DEFAULT '0',
- ADD INDEX `live_cpuload` (`live_cpuload`)");
+ ADD INDEX `live_cpuload` (`live_cpuload`),
+ ADD INDEX `live_cputemp` (`live_cputemp`)");
if ($ret === false) {
finalResponse(UPDATE_FAILED, 'Adding live_cpuload column to machine table failed: ' . Database::lastError());
}
diff --git a/modules-available/statistics/pages/machine.inc.php b/modules-available/statistics/pages/machine.inc.php
index 79166cd5..d7ab788d 100644
--- a/modules-available/statistics/pages/machine.inc.php
+++ b/modules-available/statistics/pages/machine.inc.php
@@ -52,8 +52,9 @@ class SubPage
private static function showMachine($uuid)
{
$client = Database::queryFirst('SELECT machineuuid, locationid, macaddr, clientip, firstseen, lastseen, logintime, lastboot, state,
- mbram, live_tmpsize, live_tmpfree, live_swapsize, live_swapfree, live_memsize, live_memfree, live_cpuload, Length(position) AS hasroomplan,
- kvmstate, cpumodel, id44mb, data, hostname, currentuser, currentsession, notes FROM machine WHERE machineuuid = :uuid',
+ mbram, live_tmpsize, live_tmpfree, live_swapsize, live_swapfree, live_memsize, live_memfree, live_cpuload, live_cputemp,
+ Length(position) AS hasroomplan, kvmstate, cpumodel, id44mb, data, hostname, currentuser, currentsession, notes
+ FROM machine WHERE machineuuid = :uuid',
array('uuid' => $uuid));
if ($client === false) {
Message::addError('unknown-machine', $uuid);
@@ -127,7 +128,9 @@ class SubPage
}
if ($client['live_cpuload'] <= 100) {
$client['live_cpuload_s'] = $client['live_cpuload'] . "\xe2\x80\x89%";
+ $client['live_cpuidle'] = 100 - $client['live_cpuload'];
}
+ $client['live_cputemppercent'] = max(0, min(100, 110 - $client['live_cputemp']));
$client['ramclass'] = StatisticsStyling::ramColorClass($client['mbram']);
$client['kvmclass'] = StatisticsStyling::kvmColorClass($client['kvmstate']);
$client['hddclass'] = StatisticsStyling::hddColorClass($client['gbtmp']);
diff --git a/modules-available/statistics/templates/machine-main.html b/modules-available/statistics/templates/machine-main.html
index 83c3a292..3eabf65c 100644
--- a/modules-available/statistics/templates/machine-main.html
+++ b/modules-available/statistics/templates/machine-main.html
@@ -229,9 +229,16 @@
<div class="meter">
<div class="text left">{{lang_cpuload}}</div>
<div class="text right">{{live_cpuload_s}}</div>
- <div class="bar" style="width:{{live_cpuload}}%"></div>
+ <div class="bar" style="width:{{live_cpuidle}}%"></div>
</div>
{{/live_cpuload_s}}
+ {{#live_cputemp}}
+ <div class="meter">
+ <div class="text left">{{lang_cputemp}}</div>
+ <div class="text right">{{live_cputemp}}&thinsp;°C</div>
+ <div class="bar" style="width:{{live_cputemppercent}}%"></div>
+ </div>
+ {{/live_cputemp}}
</td>
</tr>
<tr>