Download the PHP package meusistemabr/ci4-sqlite-logger without Composer
On this page you can find all versions of the php package meusistemabr/ci4-sqlite-logger. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download meusistemabr/ci4-sqlite-logger
More information about meusistemabr/ci4-sqlite-logger
Files in meusistemabr/ci4-sqlite-logger
Package ci4-sqlite-logger
Short Description Logger SQLite rotativo e auditoria forense estruturada para aplicações CodeIgniter 4. Garanta integridade total dos seus logs com nosso sistema de rotação inteligente, mantendo um histórico completo e seguro para auditorias forenses. Ideal para aplicações que exigem conformidade rigorosa e rastreabilidade detalhada.
License MIT
Informations about the package ci4-sqlite-logger
CI4 SQLite Logger 🛡️
O CI4 SQLite Logger é uma biblioteca de logging de alta integridade para CodeIgniter 4. Diferente dos logs tradicionais em texto, ele armazena eventos em um banco de dados SQLite rotativo, utilizando uma Corrente de Custódia (Hash Chain) para garantir que os registros não sejam alterados ou deletados sem detecção.
✨ Recursos Principais
- Banco de Dados Rotativo: Monitoramento automático do tamanho do arquivo com rotação inteligente.
- Corrente de Custódia: Cada log contém um hash SHA-256 que o vincula matematicamente ao log anterior.
- Modo Performance (WAL): Utiliza Write-Ahead Logging para permitir escritas rápidas sem travar a aplicação.
- Dados Forenses: Captura automática de IP (IPv4/IPv6), UUID, Device Info e porta remota.
- Metadados de Segurança: Identificação única do banco de dados para evitar substituição de arquivos.
A biblioteca pode trabalhar de duas formas:
- Como handler do
log_message()do CodeIgniter 4. - Como API direta por helpers globais:
msbr_log()emsbr_audit().
A forma direta é recomendada para auditoria de negócio, porque o terceiro parâmetro do log_message() é usado pelo Logger/PSR-3 para interpolação de placeholders e pode não chegar intacto ao handler.
🚀 Instalação
Instale a lib via Composer:
Depois de atualizar a lib localmente, rode:
⚙️ Configuração opcional do Logger.php
Arquivo: app/Config/Logger.php
Abra o arquivo instancie a biblioteca do SQLite Logger no início do arquivo, logo após as instâncias padrão do Codeigniter, adicione e, adicione o handler no array no mesmo arquivo, veja um exemplo:
Os parâmetros são opcionais, uma vez já definido quais os na classe a biblioteca já funciona com seus valores padrões.
Uso recomendado: log técnico direto
Os dados são gravados na tabela system_logs.
Uso recomendado: auditoria de negócio
Os dados são gravados na tabela audit_logs.
Assinatura:
Tabelas criadas automaticamente
A biblioteca cria automaticamente:
system_logsaudit_logslib_metadata
Caminho padrão:
Normalmente equivale a:
Por padrão, o tamanho máximo por cada bloco de Banco de Dados é de 10MB, você pode definir valores maiores ou menores. O sistema fará a rotatividade de forma automática quando atingir o limite.
🔍 Funções Forenses e Segurança
Pensamos nesta lib para logs no Codeigniter 4 principalmente não só para registrar e rastrear os registros de erros e ingestões de sua aplicação, mas também para oferecer garantia de, caso necessário, caso seu Software com nossa lib instalada passe por alguma perícia forense digita; ou análise de consistência, você poderá oferecer conformidade e confiabilidade.
1. Integridade de Dados (Hash Chain)
Cada linha inserida gera um hash baseado em: .Se um hacker apagar o log de um ataque, a corrente será quebrada, invalidando o banco.
A biblioteca mantém hash chain para system_logs e audit_logs.
2. Rastreabilidade Total
Diferente do log padrão, salvamos:
- UUID: Identificador único para rastrear uma falha específica.
- Contexto JSON: Dados estruturados para auditoria.
- Fingerprint: Informações do navegador e sistema operacional do originador.
3. Consulta dos Logs pelo Spark
Exiba os 10 registros mais recentes do banco SQLite em uso:
Informe uma quantidade entre 1 e 1000 para alterar o limite:
4. Seguro contra crash e erro 500
As helpers msbr_log() e msbr_audit() são protegidas com Throwable e retornam false em caso de falha. Por padrão, a lib não derruba a aplicação.
Para debug local:
Para produção:
Apoiado e mantido por
Meu Sistema - Sistemas online personalizados
Acesse: https://meusistema.com.br
Fale consoco em: contato[at]meusistema.com.br
Licença
All versions of ci4-sqlite-logger with dependencies
ext-pdo Version *
ext-pdo_sqlite Version *