Commit 671a41a2 authored by vogelor's avatar vogelor
Browse files

monitor: the ispconfig - Log is now part of the system-state

parent 9c1b52fb
......@@ -381,10 +381,33 @@ function _processDbState($type, $serverId, &$serverState, &$messages)
break;
}
}
if ($type == 'sys_log'){
switch ($record['state']) {
case 'ok':
$messages['ok'][] = 'The System-Log is O.K. ' .
"<a href='#' onclick='loadContent(\"monitor/log_list.php\");'>[more...]</a>";
break;
case 'warning':
$messages['warning'][] = 'There are some warnings in your System-Log ' .
"<a href='#' onclick='loadContent(\"monitor/log_list.php\");'>[more...]</a>";
break;
case 'error':
$messages['error'][] = 'There are errors in your System-Log ' .
"<a href='#' onclick='loadContent(\"monitor/log_list.php\");'>[more...]</a>";
break;
default:
$messages['unknown'][] = 'sys-log:??? ' .
"<a href='#' onclick='loadContent(\"monitor/log_list.php\");'>[more...]</a>";
break;
}
}
if ($type == 'log_clamav'){
/* this type has no state */
}
if ($type == 'log_freshclam'){
if ($type == 'log_freshclam'){
switch ($record['state']) {
case 'ok':
$messages['ok'][] = 'Your Virus-protection is ok ' .
......@@ -400,6 +423,7 @@ function _processDbState($type, $serverId, &$serverState, &$messages)
break;
}
}
if ($type == 'log_ispconfig'){
/* this type has no state */
}
......
......@@ -120,6 +120,7 @@ class monitor_core_module {
$this->monitorMailQueue();
$this->monitorRaid();
$this->monitorRkHunter();
$this->monitorSysLog();
}
function monitorServer(){
......@@ -729,7 +730,49 @@ class monitor_core_module {
$this->_delOldRecords($type, 0, 2);
}
function monitorMailLog()
function monitorSysLog(){
global $app;
global $conf;
/* the id of the server as int */
$server_id = intval($conf["server_id"]);
/** The type of the data */
$type = 'sys_log';
/*
* is there any warning or error for this server?
*/
$state = 'ok';
$dbData = $app->dbmaster->queryAllRecords("SELECT loglevel FROM sys_log WHERE server_id = " . $server_id . " AND loglevel > 0");
if (is_array($dbData)) {
foreach($dbData as $item){
if ($item['loglevel'] == 1) $state = $this->_setState($state, 'warning');
if ($item['loglevel'] == 2) $state = $this->_setState($state, 'error');
}
}
/** There is no monitor-data because the data is in the sys_log table */
$data['output']= '';
/*
* 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 monitorMailLog()
{
global $app;
global $conf;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment