Download the PHP package codeflow-hub/logger without Composer
On this page you can find all versions of the php package codeflow-hub/logger. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download codeflow-hub/logger
More information about codeflow-hub/logger
Files in codeflow-hub/logger
Package logger
Short Description Sistema enterprise de logs PSR-3 compliant com suporte a múltiplos handlers (arquivo, email, Telegram). Wrapper para Monolog com contexto estruturado e sanitização automática de dados sensíveis.
License MIT
Informations about the package logger
CodeFlow Logger
Sistema enterprise de logs PSR-3 compliant com suporte a múltiplos handlers (arquivo, email, Telegram).
Wrapper estático para Monolog com contexto estruturado automático, sanitização de dados sensíveis e helper global.
✨ Recursos
- ✅ PSR-3 Compliant – cobre os 8 níveis oficiais (
debug→emergency) - ✅ Logging em arquivo com rotação diária automática (
PROJECT_ROOT/logs/file-YYYY-MM-DD.logpor padrão) - ✅ Notificações por email com
NativeMailerHandlerparaERROR+ - ✅ Notificações por Telegram com
TelegramBotHandlerparaCRITICAL+ - ✅ Contexto estruturado automático (request_id, session_id, IP, user-agent)
- ✅ Sanitização recursiva de dados sensíveis (password, token, secret, senha, hash)
- ✅ Configuração fluente via
Logger::settings(),enableLogByEmail()eenableLogByTelegram() - ✅ Scripts de qualidade prontos (
composer test,composer phpstan, etc.)
Instalação
🚀 Uso Básico
Logging simples
Níveis PSR-3 com notice()
⚙️ Configuração (Opcional)
Diretório, arquivos e níveis
Se nenhum ajuste for feito, o logger usa
PROJECT_ROOT/logs/file-YYYY-MM-DD.loge registra a partir deDEBUG.
Notificações por email
Notificações por Telegram
Tratando falhas de inicialização
Use Logger::fail() para inspecionar problemas como diretório de log sem permissão ou parâmetros inválidos de configuração. O método retorna null quando não há erros pendentes.
📊 Níveis PSR-3 Suportados
| Método | Nível | Descrição | Email/Telegram |
|---|---|---|---|
debug() |
DEBUG | Informações detalhadas para desenvolvimento | ❌ |
info() |
INFO | Eventos informativos gerais | ❌ |
notice() |
NOTICE | Eventos significativos, porém normais | ❌ |
warning() |
WARNING | Avisos que não impedem execução | ❌ |
error() |
ERROR | Erros que exigem atenção | ✅ |
critical() |
CRITICAL | Falhas críticas do sistema | ✅ |
alert() |
ALERT | Ação imediata necessária | ✅ |
emergency() |
EMERGENCY | Sistema inutilizável | ✅ |
🔒 Segurança e Sanitização
O logger automaticamente sanitiza dados sensíveis antes de gravar nos logs:
Campos automaticamente sanitizados: password, token, secret, senha, hash (inclusive em arrays aninhados). Strings longas são truncadas para 120 caracteres para facilitar a leitura.
📁 Estrutura dos Logs
Os logs são salvos em PROJECT_ROOT/logs/file-YYYY-MM-DD.log por padrão. Use Logger::settings(['file_log_label' => 'app-' . date('Y-m-d') . '.log']) para adequar o nome ao seu padrão:
Formato do Log
📚 Exemplos prontos
Os exemplos cobrem desde o onboarding rápido até fluxos de produção (contexto HTTP, sanitização, métricas e notificações). Eles são ideais para validar o pacote em ambientes locais ou pipelines.
🛠️ Desenvolvimento
Scripts Composer úteis
Estrutura do projeto
📋 Requisitos
- PHP >= 7.4
- Monolog ^2.0 | ^3.0
📄 Licença
Este projeto está licenciado sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
🤝 Contribuindo
- Fork o projeto
- Crie uma feature branch (
git checkout -b feature/amazing-feature) - Commit suas mudanças (
git commit -m 'Add amazing feature') - Push para a branch (
git push origin feature/amazing-feature) - Abra um Pull Request
📞 Suporte
- Issues: GitHub Issues
- Email: [email protected]
- Website: https://codeflow.com.br
Desenvolvido com ❤️ pela CodeFlow Hub