Criação de um log de erros
Como criar um arquivo que armazena os erros que foram produzidos durante a execução de um programa, acrescentar um log de erros a nossa página.Por Eloi de San Martin Lagranje
Publicado em: 17/1/06
Um log de erros permitirá controlar quando se produz um erro para corrigi-lo e evitar que se repita no
futuro.
Para criar um log, abriremos ,o arquivo em modo 'a' (escritura ao
final) e escreveremos o erro indicando a data, para simplificar o
trabalho podemos incluir tudo em uma função:
<?php
function error($numero,$texto){
$ddf = fopen('error.log','a');
fwrite($ddf,"[".date("r")."] Error $numero: $texto\r\n");
fclose($ddf);
}
?>
Uma vez declarada a função, teremos somente que chamá-la da
seguinte forma quando se produzir um erro para que se salve em
error.log:
<?php
// Se nao existe a cookie sessao
if(!isset($_COOKIE['sessao'])){
// Salvamos um erro
error('001','Nao existe a cookie de sessao');
}
?>
Desta maneira, cada vez que um usuário entra nesta página sem a
cookie sessao, armazena-se uma nova linha no arquivo, indicando:
[data] Erro 001: Nao existe a cookie de sessao
Vamos ver agora como podemos melhorar isto de forma que além de
poder gravar os erros que nós definirmos em nosso site, que armazene também os erros produzidos durante a execução do script php.
Conseguiremos isto indicando ao intérprete Zend que chame à
função error() cada vez que o código PHP contenha um erro com a
função set_error_handler:
<?php
set_error_handler('error');
?>
Então, o código completo fica da seguinte forma:
<?php
function error($numero,$texto){
$ddf = fopen('error.log','a');
fwrite($ddf,"[".date("r")."] Error $numero:$texto\r\n");
fclose($ddf);
}
set_error_handler('error');
?>
E desta maneira finalizamos nosso script para gerar um
log de erros pessoais e de PHP.
Comentários do artigo