diff options
author | Simon Rettberg | 2020-04-27 12:59:12 +0200 |
---|---|---|
committer | Simon Rettberg | 2020-04-27 12:59:12 +0200 |
commit | c7762bc6e87419ba8c71d7b431607393d2370e5c (patch) | |
tree | 45f49398ea3baec87cef11bdf9c7df10cf698fa7 /modules-available | |
parent | Fix typo in last commit (diff) | |
download | slx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.tar.gz slx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.tar.xz slx-admin-c7762bc6e87419ba8c71d7b431607393d2370e5c.zip |
[statistics] Track CPU temperature as well
Diffstat (limited to 'modules-available')
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}} °C</div> + <div class="bar" style="width:{{live_cputemppercent}}%"></div> + </div> + {{/live_cputemp}} </td> </tr> <tr> |