diff --git a/ecrire/bootstrap/config/globals.php b/ecrire/bootstrap/config/globals.php index 56ba04f379879b9762eac45d254e49c0e29651e9..f21055ff8bfc6850dc3a197587d8f5325734dc71 100644 --- a/ecrire/bootstrap/config/globals.php +++ b/ecrire/bootstrap/config/globals.php @@ -67,8 +67,6 @@ global $nombre_de_logs = 4; $taille_des_logs = 100; -// on peut definir _LOG_FILTRE_GRAVITE dans mes_options.php - // Prefixe des tables dans la base de donnees // (a modifier pour avoir plusieurs sites SPIP dans une seule base) $table_prefix = 'spip'; diff --git a/ecrire/bootstrap/inc/logging.php b/ecrire/bootstrap/inc/logging.php index 93ebeaf87fc71f97ff25c7c5fc24167d78b7276a..f50b1f616d565dc3f6cac872af39f599725c68ab 100644 --- a/ecrire/bootstrap/inc/logging.php +++ b/ecrire/bootstrap/inc/logging.php @@ -2,6 +2,7 @@ use Monolog\Level; use Psr\Log\LoggerInterface; +use Psr\Log\LogLevel; use Spip\Component\Filesystem\Filesystem; use Spip\Component\Logger\Config; use Spip\Component\Logger\Factory; @@ -54,7 +55,29 @@ function spip_logger(?string $name = null): LoggerInterface { // échappement des log 'brut' => defined('_LOG_BRUT') ? constant('_LOG_BRUT') : null, // à quel level on commence à logguer - 'max_level' => defined('_LOG_FILTRE_GRAVITE') ? $spipToMonologLevels[constant('_LOG_FILTRE_GRAVITE')] ?? Level::Info : Level::Info, + 'max_level' => (function() use ($spipToMonologLevels): Level { + if (!defined('_LOG_FILTRE_GRAVITE')) { + return Level::Notice; + } + $level = constant('_LOG_FILTRE_GRAVITE'); + if ($level instanceof Level) { + return $level; + } + if (isset($spipToMonologLevels[$level])) { + return $spipToMonologLevels[$level]; + } + return match($level) { + LogLevel::EMERGENCY => Level::Emergency, + LogLevel::ALERT => Level::Alert, + LogLevel::CRITICAL => Level::Critical, + LogLevel::CRITICAL => Level::Error, + LogLevel::CRITICAL => Level::Warning, + LogLevel::CRITICAL => Level::Notice, + LogLevel::CRITICAL => Level::Info, + LogLevel::CRITICAL => Level::Debug, + default => Level::Notice, + }; + })(), // rotation: nombre de fichiers 'max_files' => $GLOBALS['nombre_de_logs'] ??= 4, // rotation: taille max d’un fichier diff --git a/ecrire/inc_version.php b/ecrire/inc_version.php index 6c6146c5211be839bfa9c568488e14733e6b2b30..0e2443a9237892d9ea6e2d57aebc3d87bcf885a9 100644 --- a/ecrire/inc_version.php +++ b/ecrire/inc_version.php @@ -9,6 +9,7 @@ * Ce programme est un logiciel libre distribué sous licence GNU/GPL. * \***************************************************************************/ +use Psr\Log\LogLevel; use Spip\ErrorHandler; /** @@ -120,8 +121,11 @@ if (@is_readable(_CACHE_PLUGINS_OPT) && @is_readable(_CACHE_PLUGINS_PATH)) { spip_initialisation_suite(); if (!defined('_LOG_FILTRE_GRAVITE')) { - /** niveau maxi d'enregistrement des logs */ - define('_LOG_FILTRE_GRAVITE', _LOG_INFO_IMPORTANTE); + /** + * Niveau maxi d'enregistrement des logs + * @var LogLevel::* + */ + define('_LOG_FILTRE_GRAVITE', LogLevel::NOTICE); } if (!defined('_OUTILS_DEVELOPPEURS')) {