New: Possibilité de logguer dans un fichier plutot que syslog

This commit is contained in:
Laurent Destailleur 2005-04-21 17:55:23 +00:00
parent 9788b81157
commit 1a4ee701a1
2 changed files with 43 additions and 32 deletions

View File

@ -52,7 +52,7 @@ class modSyslog extends DolibarrModules
$this->family = "technic"; $this->family = "technic";
$this->name = "Syslog"; $this->name = "Syslog";
$this->description = "Utilisation de syslog"; $this->description = "Activation des traces debug (syslog)";
$this->version = '2.0.0'; // 'experimental' or 'dolibarr' or version $this->version = '2.0.0'; // 'experimental' or 'dolibarr' or version
$this->const_name = "MAIN_MODULE_SYSLOG"; $this->const_name = "MAIN_MODULE_SYSLOG";
$this->const_config = MAIN_MODULE_SYSLOG; $this->const_config = MAIN_MODULE_SYSLOG;
@ -84,6 +84,7 @@ class modSyslog extends DolibarrModules
function init() function init()
{ {
$sql = array(); $sql = array();
return $this->_init($sql); return $this->_init($sql);
} }

View File

@ -80,15 +80,24 @@ function check_mail ($mail)
/** /**
\brief Envoi des messages dolibarr dans syslog. \brief Envoi des messages dolibarr dans syslog ou dans un fichier
Pour syslog: facility défini par MAIN_SYSLOG_FACILITY
Pour fichier: fichier défini par MAIN_SYSLOG_FILE
\param message message a envoyer a syslog \param message message a envoyer a syslog
\param level Niveau de l'erreur \param level Niveau de l'erreur
\remarks Cette fonction ne marchera qui si le module est activé \remarks Cette fonction a un effet que si le module syslog est activé
Le message est envoyé dans syslog dans la catégorie LOG_USER.
*/ */
function dolibarr_syslog($message, $level=LOG_ERR) function dolibarr_syslog($message, $level=LOG_ERR)
{ {
if (defined("MAIN_MODULE_SYSLOG") && MAIN_MODULE_SYSLOG) if (defined("MAIN_MODULE_SYSLOG") && MAIN_MODULE_SYSLOG)
{
if (defined("MAIN_SYSLOG_FILE") && MAIN_SYSLOG_FILE)
{
$file=fopen(MAIN_SYSLOG_FILE,"a+");
fwrite($file,time()." ".$level." ".$message."\n");
fclose($file);
}
else
{ {
// Warning, les fonctions syslog sont buggués sous Windows et génèrent des // Warning, les fonctions syslog sont buggués sous Windows et génèrent des
// fautes de protection mémoire. Pour résoudre, désactiver MAIN_DEBUG sous Windows. // fautes de protection mémoire. Pour résoudre, désactiver MAIN_DEBUG sous Windows.
@ -117,6 +126,7 @@ function dolibarr_syslog($message, $level=LOG_ERR)
closelog(); closelog();
} }
} }
}
/** /**