Ciao a tutti,
sto cercando di creare una funzione che mi invii nella mia casella di posta eventuali errori che si possono presentare nel corso del tempo nei miei siti.
per ora ho recuperato una funzioncina, secondo me, molto carina:
Codice PHP:
function errorHandler($code,$message,$filename,$lineNumber){
$messaggio = '<h1>È stato riscontrato un errore!</h1>';
$messaggio.= '
[b]Indirizzo:[/b] '.$_SERVER['REQUEST_URI'].'</p>';
$messaggio.= '
[b]User agent:[/b] '.$_SERVER['HTTP_USER_AGENT'].'</p>';
$messaggio.= '
[b]Indirizzo ip:[/b] '.$_SERVER['REMOTE_ADDR'].'</p>';
if(isset($_SERVER['HTTP_REFERER']))
$messaggio.= '
[b]Referer:[/b] '.$_SERVER['HTTP_REFERER'].'</p>';
$messaggio.= '
[b]Data:[/b] ['.date('r').']</p>';
$messaggio.= '
[b]Errore:[/b] '.$message.' - '.$code.'</p>';
$messaggio.= '
[b]Linea:[/b] '.$lineNumber.'</p>';
$messaggio.= '
[b]File:[/b] '.$filename.'</p>';
error_log($messaggio."\r\n\n\n",1,"mia@casella.posta","Content-type: text/html; charset=utf-8\r\n");
}
set_error_handler("errorHandler");
così, tramite l'uso di error_log() arriva nella mia casella di posta la segnalazione dell'errore.
mi arrivano però centinaia di errori presenti nelle librerie di terze parti come PEAR.
come posso escludere dall'analisi la cartella che contiene codici di terze parti?
esistono soluzioni migliori?