Malcolm Beck´s: Errorlog erweitern

Beitrag lesen

hi,

ich hab das PHP-Interne error_log ein wenig erweitert und würde gerne eure Meinungen bzw. verbesserungsvorschläge dazu einholen.

Sinn ist der, dass ich mir eine möglichkeit geschaffen habe, die error_logs möglichst Flexibel im Admin-Backend auszuwerten.

  /*  
   * Param $_content: Die Fehlermeldung, bspw. Error 404 - not found  
   * Param $_connect: Datenbankverbindung, um Mysql-Fehler abzufragen  
   * Param $_errfile: Die Errorlog-Datei  
  */  
  function my_errorlog ($_content,$_connect,$_errfile=ErrorLogFile)  
  {  
    /*  
     * Prüfen, ob die Errorlog-Datei die vorgegebene Max.-Grösse überschreitet  
    */  
    if (file_exists($_errfile))  
      if (filesize($_errfile) >= 1610612736)  # 1610612736 Bytes ca. 1,5 GB -- Limit für die Error-Logs  
                                              # Wenn Limit erreicht, versuch die Datei zu löschen  
        /*  
         * Wenn löschen Erfolgreich, neue Errorlog-Datei anlegen und die Löschung der Alten Datei im neuen Errorlog speichern  
        */  
        if (unlink ($_errfile))  
          return error_log(sprintf("[%s] |>Error: Errolog zu Gross, Datei gelöscht\n"  
                                  , date("d M Y H:i:s")), 3, $_errfile);  
        /*  
         * Wenn löschen nicht geklappt hat, speichern  
        */  
        else  
          return error_log(sprintf("[%s] |>Error: Errorlog zu Gross, löschen Fehlgeschlagen\n"  
                                  , date("d M Y H:i:s")), 3, $_errfile);  
    /*  
     * Auftretende Fehler im gewünschten Format speichern  
    */  
    return error_log(sprintf("[%s] |>Error: %s |>Link: %s %s\n"  
                   , date("d M Y H:i:s")  
                   , $_content  
                   , $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] ## URI speichern, in dem der Fehler aufgetreten ist  
                   /*  
                    * Wenn es einen mysql-error gibt, auch speichern, andernfalls Leer lassen  
                   */  
                   , (($_connect->error OR mysqli_connect_error()) ? '|>mysqli-Error: ' . $_connect->error . mysqli_connect_error() : '' )  
                   ), 3, $_errfile);  
  }

Aufruf:

  
# Errorlog definieren  
ini_set('error_log', 'error/error_log.inc.php');   ## Error-Log  
define('ErrorLogFile', ini_get('error_log'));      ## Error-Log-Pfad  
  
if (!$dbResult) ## Nur ein Beispiel  
  my_errorlog ('Seite existiert nicht, Error 404', $_DBconnect);

Was könnte da noch mit rein, was würde Sinn machen?

mfg

--
echo '<pre>'; var_dump($Malcolm_Beck`s); echo '</pre>';
array(2) {
  ["SELFCODE"]=>
  string(74) "ie:( fl:) br:> va:? ls:? fo:) rl:| n4:# ss:{ de:? js:} ch:? sh:( mo:? zu:("
  ["Meaningful"]=>
  string(?) "Der Sinn des Lebens ist deinem Leben einen Sinn zu geben"
}