From 045beddf0eab55fe0cf94c43f9d146a1f3ad1e45 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Sun, 25 Jan 2009 06:30:01 -0500
Subject: [PATCH] Fixed: FS#474 - serial not updated for domain after changes 

---
 server/mods-available/monitor_core_module.inc.php |   62 ++++++++++++++++++++++++++-----
 1 files changed, 52 insertions(+), 10 deletions(-)

diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php
index cbd2417..cf263a2 100644
--- a/server/mods-available/monitor_core_module.inc.php
+++ b/server/mods-available/monitor_core_module.inc.php
@@ -113,6 +113,7 @@
         $this->monitorMailWarnLog();
         $this->monitorMailErrLog();
         $this->monitorMessagesLog();
+        $this->monitorISPCCronLog();
         $this->monitorFreshClamLog();
         $this->monitorClamAvLog();
         $this->monitorIspConfigLog();
@@ -190,8 +191,8 @@
         /** The state of the disk-usage */
         $state = 'ok';
 
-        /** Fetch the data into a array */
-        $dfData = shell_exec("df");
+        /** Fetch the data of ALL devices into a array (needed for monitoring!)*/
+        $dfData = shell_exec("df -hT");
 
         // split into array
         $df = explode("\n", $dfData);
@@ -207,11 +208,12 @@
                  */
                 $s = preg_split ("/[\s]+/", $df[$i]);
                 $data[$i]['fs'] = $s[0];
-                $data[$i]['size'] = $s[1];
-                $data[$i]['used'] = $s[2];
-                $data[$i]['available'] = $s[3];
-                $data[$i]['percent'] = $s[4];
-                $data[$i]['mounted'] = $s[5];
+                $data[$i]['type'] = $s[1];
+                $data[$i]['size'] = $s[2];
+                $data[$i]['used'] = $s[3];
+                $data[$i]['available'] = $s[4];
+                $data[$i]['percent'] = $s[5];
+                $data[$i]['mounted'] = $s[6];
                 /*
                  * calculate the state
                  */
@@ -261,7 +263,7 @@
         $memInfo = explode("\n", $miData);
 
         foreach($memInfo as $line){
-            $part = split(":", $line);
+            $part = preg_split("/:/", $line);
             $key = trim($part[0]);
             $tmp = explode(" ", trim($part[1]));
             $value = 0;
@@ -311,7 +313,7 @@
         $cpuInfo = explode("\n", $cpuData);
 
         foreach($cpuInfo as $line){
-            $part = split(":", $line);
+            $part = preg_split("/:/", $line);
             $key = trim($part[0]);
             $value = trim($part[1]);
             $data[$key] = $value;
@@ -937,6 +939,43 @@
         $this->_delOldRecords($type, 10);
     }
 
+    function monitorISPCCronLog()
+    {
+        global $app;
+        global $conf;
+
+        /* the id of the server as int */
+        $server_id = intval($conf["server_id"]);
+
+        /** The type of the data */
+        $type = 'log_ispc_cron';
+
+        /* Get the data of the log */
+        $data = $this->_getLogData($type);
+
+        /*
+         * actually this info has no state.
+         * maybe someone knows better...???...
+         */
+        $state = 'no_state';
+
+        /*
+        Insert the data into the database
+        */
+        $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
+            "VALUES (".
+        $server_id . ", " .
+            "'" . $app->dbmaster->quote($type) . "', " .
+        time() . ", " .
+            "'" . $app->dbmaster->quote(serialize($data)) . "', " .
+            "'" . $state . "'" .
+            ")";
+        $app->dbmaster->query($sql);
+
+        /* The new data is written, now we can delete the old one */
+        $this->_delOldRecords($type, 10);
+    }
+    
     function monitorFreshClamLog()
     {
         global $app;
@@ -1091,6 +1130,9 @@
                 break;
             case 'log_messages':
                 $logfile = '/var/log/messages';
+                break;
+            case 'log_ispc_cron':
+                $logfile = '/var/log/ispconfig/cron.log';
                 break;
             case 'log_freshclam':
                 $logfile = '/var/log/clamav/freshclam.log';
@@ -1263,4 +1305,4 @@
 
 } // end class
 
-?>
\ No newline at end of file
+?>

--
Gitblit v1.9.1