From 64ee0ce2bb9b5def126008cd73e680f6d48345ff Mon Sep 17 00:00:00 2001 From: arjen Date: Fri, 21 Feb 2003 08:24:10 +0000 Subject: [PATCH] Detect more conditions for daemons. --- src/gcm_daemon/classes/gnucomo.process_log.php | 48 ++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/src/gcm_daemon/classes/gnucomo.process_log.php b/src/gcm_daemon/classes/gnucomo.process_log.php index dee50fc..32c1d98 100644 --- a/src/gcm_daemon/classes/gnucomo.process_log.php +++ b/src/gcm_daemon/classes/gnucomo.process_log.php @@ -368,19 +368,63 @@ function linux_daemon() { $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'start')"; $dbms_working->query($local_sql); } else { + + //The word error indicates problems. + $pos = strpos($local_log_line, "error"); + $pos2 = strpost($local_log_line, "crash"); //The word crash is also considered to be an error + if ($pos > 0 or $pos2 > 0) { + + $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; + $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'error detected')"; + $dbms_working->query($local_sql); + + //Quite often an error will be followed with information that the daemon or service ended. + $pos = strpos($local_log_line, "abort"); + if ($pos > 0) { + $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; + $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'abort')"; + $dbms_working->query($local_sql); + } else { + $pos = strpos($local_log_line, "ended"); + if ($pos > 0) { + $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; + $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'abort')"; + $dbms_working->query($local_sql); + } else { + $pos = strpos($local_log_line, "stop"); + if ($pos > 0) { + $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; + $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'abort')"; + $dbms_working->query($local_sql); + } else { + + //For power management there is a charge warning + $pos = strpos($local_log_line, "charge"); + if ($pos > 0) { + $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; + $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'Power warning')"; + $dbms_working->query($local_sql); + } else { + //As the word start this is an else for restart. //If we wouldn't do so restart would also give a positive on start + //This can only be done if we ensured nothing else was the case + //PLEASE USE THIS AS LATE AS POSSIBLE!!! $pos = strpos($local_log_line, "exiting"); if ($pos > 0) { $local_sql = "INSERT INTO log_adv_daemon (logid, detailed_table, service, event) VALUES "; $local_sql .= "('".$dbms->db_result_row[0]."', 'log_adv_daemon', '".$dbms->db_result_row[3]."', 'start')"; $dbms_working->query($local_sql); - } + } } } } } - + } + } +} +} +} return "ok"; } -- 2.11.0