Sistema de Logs
Sistema completo de logs e monitoramento
"Tudo posso naquele que me fortalece"
Filipenses 4:13
O sistema de logs do CBAV registra todas as atividades importantes do sistema, incluindo erros, ações de usuários, transações e eventos de segurança. Fornece monitoramento em tempo real e análise histórica.
Acompanhamento em tempo real
Relatórios e estatísticas
Auditoria e compliance
Registro de erros e exceções
Registro de acessos e autenticação
Registro de ações dos usuários
Monitoramento de performance
'default' => env('LOG_CHANNEL', 'stack'),
'channels' => [
'stack' => [
'driver' => 'stack',
'channels' => ['single', 'daily'],
'ignore_exceptions' => false,
],
'single' => [
'driver' => 'single',
'path' => storage_path('logs/laravel.log'),
'level' => env('LOG_LEVEL', 'debug'),
],
'daily' => [
'driver' => 'daily',
'path' => storage_path('logs/laravel.log'),
'level' => env('LOG_LEVEL', 'debug'),
'days' => 14,
],
'error' => [
'driver' => 'single',
'path' => storage_path('logs/error.log'),
'level' => 'error',
],
'security' => [
'driver' => 'single',
'path' => storage_path('logs/security.log'),
'level' => 'info',
],
],
# Configurações de Log
LOG_CHANNEL=stack
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
# Logs específicos
ERROR_LOG_CHANNEL=error
SECURITY_LOG_CHANNEL=security
PERFORMANCE_LOG_CHANNEL=daily
// Log de informação
Log::info('Usuário criado com sucesso', [
'user_id' => $user->id,
'email' => $user->email
]);
// Log de erro
Log::error('Erro ao processar pagamento', [
'user_id' => $user->id,
'amount' => $amount,
'error' => $exception->getMessage()
]);
// Log de warning
Log::warning('Tentativa de login falhou', [
'email' => $email,
'ip' => request()->ip()
]);
// Log de debug
Log::debug('Query executada', [
'sql' => $query->toSql(),
'bindings' => $query->getBindings()
]);
// Log de criação
Log::info('Membro criado', [
'action' => 'create',
'model' => 'Member',
'user_id' => auth()->id(),
'data' => $member->toArray()
]);
// Log de atualização
Log::info('Membro atualizado', [
'action' => 'update',
'model' => 'Member',
'user_id' => auth()->id(),
'member_id' => $member->id,
'changes' => $member->getChanges()
]);
// Log de exclusão
Log::info('Membro excluído', [
'action' => 'delete',
'model' => 'Member',
'user_id' => auth()->id(),
'member_id' => $member->id
]);
// Log de login
Log::channel('security')->info('Login realizado', [
'user_id' => $user->id,
'email' => $user->email,
'ip' => request()->ip(),
'user_agent' => request()->userAgent()
]);
// Log de tentativa de acesso
Log::channel('security')->warning('Tentativa de acesso negada', [
'email' => $email,
'ip' => request()->ip(),
'reason' => 'Senha incorreta'
]);
// Log de permissão negada
Log::channel('security')->warning('Acesso negado', [
'user_id' => auth()->id(),
'permission' => 'members.delete',
'route' => request()->route()->getName()
]);
# Ver logs em tempo real
tail -f storage/logs/laravel.log
# Buscar erros específicos
grep "ERROR" storage/logs/laravel.log
# Contar erros por período
grep -c "ERROR" storage/logs/laravel-$(date +%Y-%m-%d).log
# Analisar logs de segurança
tail -f storage/logs/security.log
# Ver logs de performance
grep "slow query" storage/logs/laravel.log
// Gerar relatório de erros
php artisan log:analyze --type=error --days=7
// Relatório de segurança
php artisan log:analyze --type=security --days=30
// Relatório de performance
php artisan log:analyze --type=performance --days=7
// Exportar logs
php artisan log:export --start=2025-01-01 --end=2025-01-31