From e253202995d188925fa4e9df4f6dea0523511eae Mon Sep 17 00:00:00 2001
From: oilyflutesalad <oilyflutesalad@ispconfig3>
Date: Mon, 18 Jan 2010 05:56:48 -0500
Subject: [PATCH] Fixed: FS#928 - System Load Averages should no longer show as zero on non-english linux distros
---
server/mods-available/monitor_core_module.inc.php | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php
index cc95772..642395e 100644
--- a/server/mods-available/monitor_core_module.inc.php
+++ b/server/mods-available/monitor_core_module.inc.php
@@ -148,12 +148,20 @@
$tmp = explode(",", $data['uptime'], 4);
$tmpUser = explode(" ", trim($tmp[2]));
$data['user_online'] = intval($tmpUser[0]);
-
+
+ /* Old Load Average Code
$loadTmp = explode(":" , trim($tmp[3]));
$load = explode(",", $loadTmp[1]);
$data['load_1'] = floatval(trim($load[0]));
$data['load_5'] = floatval(trim($load[1]));
- $data['load_15'] = floatval(trim($load[2]));
+ $data['load_15'] = floatval(trim($load[2])); */
+
+ //* New Load Average code to fix "always zero" bug in non-english distros. NEEDS TESTING
+ $loadTmp = shell_exec("cat /proc/loadavg | cut -f1-3 -d' '");
+ $load = explode(" ", $loadTmp);
+ $data['load_1'] = floatval(str_replace(',', '.', $load[0]));
+ $data['load_5'] = floatval(str_replace(',', '.', $load[1]));
+ $data['load_15'] = floatval(str_replace(',', '.', $load[2]));
/** The state of the server-load. */
$state = 'ok';
--
Gitblit v1.9.1