Classe para gerar logs
Publicado por Perfil removido (última atualização em 27/06/2011)
[ Hits: 9.380 ]
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; } } ?>
Descobrir qual SO o usuário que está acessando o seu site/software está utilizando
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)