Classe para gerar logs
Publicado por Perfil removido (última atualização em 27/06/2011)
[ Hits: 9.600 ]
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;
}
}
?>
Executando comandos através do PHP
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Programa fora de escala na tela do pc (20)
Problemas com Driver NVIDIA (0)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)









