Gestione dei log in PHP con log4php
log4php è una libreria gestita dalla Apache Foundation per la gestione dei log in PHP.
Una delle cose migliori che ha è la sua configurazione tramite XML.
Questo riduce di molto il codice PHP scritto.
Potete installare la libreria con Composer:
$ composer require apache/log4php
Questo un esempio di configurazione XML:
<configuration xmlns="http://logging.apache.org/log4php/">
<appender name="testLog" class="LoggerAppenderFile">
<layout class="LoggerLayoutPattern">
<param name="conversionPattern" value="%date [%logger] %message%newline" />
</layout>
<param name="file" value="my_log.log"/>
</appender>
<root>
<level value="WARN"/>
<appender_ref ref="testLog"/>
</root>
</configuration>
Qui abbiamo indicato un nome del logger che verrà agganciato dalla libreria.
Abbiamo indicato un layout di base per l'inserimento dei dati all'interno del file; e il file su cui scrivere.
Per quanto riguarda quest'ultimo punto, tenete a mente eventuali permessi da dargli per la scrittura.
Infine abbiamo impostato il livello minimo di log (WARN); questo vuole dire che tutti i messaggi che sono meno "importanti" di quel livello non verranno registrati.
Questo il codice PHP di esempio:
require_once './vendor/autoload.php';
Logger::configure('config.xml');
$log = Logger::getLogger('testLogger');
$log->trace("TRACE");
$log->debug("DEBUG");
$log->info("INFO");
$log->warn("WARN");
$log->error("ERROR");
$log->fatal("FATAL");
Enoy!
php log4php composer log
Commentami!