[Agora-commits] agora/ecrire/include/utils log.php,NONE,1.1.2.1

oliviermansour at adullact1.hosting.cri74.org oliviermansour at adullact1.hosting.cri74.org
Mer 21 Déc 11:58:46 CET 2005


Update of /cvsroot/agora/agora/ecrire/include/utils
In directory adullact1:/tmp/cvs-serv2115/ecrire/include/utils

Added Files:
      Tag: SPIP_AGORA_Charlotte
	log.php 
Log Message:
include this file for activating log (configuration is here too)

--- NEW FILE: log.php ---
<?php
//
// +----------------------------------------------------------------------+
// | Copyright (c) 2005 Clever Age - Olivier Mansour                      |
// +----------------------------------------------------------------------+
// | Author: Olivier MANSOUR <omansour AT clever-age.com>                 |
// +----------------------------------------------------------------------+
//
// fichier définissant les function de log de SPIP-Agora
// $Id: log.php,v 1.1.2.1 2005/12/21 10:58:44 oliviermansour Exp $


// gestion des erreurs sous SPIP-Agora 






// ATTENTION ! //
// ce code est intéressant mais provoque un core dump d'apache avec PHP5 !!!!!!!!!!!!! (sur ma config)
if (!function_exists('errorHandler_std')) {
    function errorHandler_std($code, $message, $file, $line) {
        
        require_once (dirname(__FILE__)."/../log/inc_agoralog_factory.php");
        
        switch ($code) {
            case E_WARNING:
            case E_USER_WARNING:
                $priority = PEAR_LOG_WARNING;
                break;
            case E_NOTICE:
            case E_USER_NOTICE:
                $priority = PEAR_LOG_NOTICE;
                break;
            case E_ERROR:
            case E_USER_ERROR:
                $priority = PEAR_LOG_ERR;
                break;
            default:
                $priority = PEAR_LOG_NOTICE;
        }
    
        $log = & recuperer_instance_agoralog($priority);
        
        $log->AgoraLog_Message($message . ' in ' . $file . ' at line ' . $line, $priority);
    }
}



if (!function_exists('errorHandler_pear')) {
    function errorHandler_pear($error) {
        require_once (dirname(__FILE__)."/../log/inc_agoralog_factory.php");
        
        $message = $error->getMessage();

        if (!empty($error->backtrace[1]['file'])) {
            $message .= ' (' . $error->backtrace[1]['file'];
            if (!empty($error->backtrace[1]['line'])) {
                $message .= ' at line ' . $error->backtrace[1]['line'];
            }
            $message .= ')';
        }
        $log = &recuperer_instance_agoralog($error->code);
        $log->AgoraLog_Message($message);
    }
}


// fonction de traitement des erreurs remontées par PHP et PEAR
require_once ('PEAR.php');
require_once (dirname(__FILE__).'/../log/inc_agoralog_factory.php');
PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'errorHandler_pear');
set_error_handler('errorHandler_std');


// fonction std SPIP


?>



Plus d'informations sur la liste de diffusion Agora-commits