Classe para gerar logs
Publicado por Perfil removido (última atualização em 27/06/2011)
[ Hits: 9.368 ]
Classe que consiste em gerar logs persistentes em arquivos de texto.
O uso é simples:
<?php
require_once('OXPLog.php');
// Instancia o objeto, especificando o arquivo que receberá os dados
$oxpl = new OXPLog('log.txt');
// Gera
$oxpl->insertIntoLogFile('Acesso à página: ' . $_SERVER['REQUEST_URI']);
?>
<?php /** * Description of OXPLog * ------------------------------------------------- * @author Orlando Xavier <ox@orlandoxavier.com> * ------------------------------------------------- * Classe para controle de gravação de logs */ class OXPLog { /* * Arquivo de logs */ private $file; /** * * @param <string> $file Arquivo a ser criado e/ou usado */ public function __construct($file) { // Deixa o arquivo oculto caso o sistema seja UNIX-like if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') { $this->file = '.' . $file; } else { $this->file = $file; } } /* * Prepara o arquivo para gravação */ public function fileCheckAndPrepare() { if (!file_exists($this->file)) { $f = fopen($this->file, 'w'); } else { $f = fopen($this->file, 'a'); } return $f; } /** * * @param <string> $event Evendo definido pelo programador * @return <bool> $r */ public function insertIntoLogFile($event) { $f = $this->fileCheckAndPrepare(); $logText = '(' . date('d/m/Y H:i:s') . ') ' . '[IP] ' . $_SERVER['REMOTE_ADDR'] . ' => [Evento] ' . $event . "\n"; if (!fwrite($f, $logText)) { $r = false; } else { $r = true; } fclose($f); return $r; } } ?>
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta