Spaces:
Sleeping
A newer version of the Gradio SDK is available:
6.6.0
Scripts de Análise Avançada de Logs
Este diretório contém scripts especializados para análise e monitoramento de logs da aplicação, desenvolvidos especificamente para auxiliar desenvolvedores na identificação e resolução de problemas.
📁 Estrutura dos Scripts
1. advanced_log_analyzer.py
Análise Retrospectiva Detalhada
Script principal para análise completa dos logs armazenados no banco de dados. Fornece relatórios detalhados sobre:
- Distribuição de logs por nível e módulo
- Detecção de erros e warnings
- Problemas de importação de módulos
- Análise de performance
- Timeline de atividade
- Eventos do Gradio
2. realtime_monitor.py
Monitoramento em Tempo Real
Monitor que acompanha os logs em tempo real e alerta sobre problemas críticos:
- Alertas instantâneos para erros críticos
- Detecção de problemas de performance
- Monitoramento de erros de importação
- Interface colorida no terminal
- Buffer de últimos problemas detectados
🚀 Como Usar
Análise Retrospectiva
# Análise básica das últimas 24 horas
python scripts/log_analysis/advanced_log_analyzer.py
# Análise das últimas 6 horas
python scripts/log_analysis/advanced_log_analyzer.py --hours 6
# Salvar relatório em arquivo
python scripts/log_analysis/advanced_log_analyzer.py --output relatorio_logs.txt
# Exportar análise em JSON
python scripts/log_analysis/advanced_log_analyzer.py --json analise_logs.json
# Especificar caminho do banco de dados
python scripts/log_analysis/advanced_log_analyzer.py --db-path logs/application.db
# Modo silencioso (apenas erros)
python scripts/log_analysis/advanced_log_analyzer.py --quiet
Monitoramento em Tempo Real
# Monitor básico (verifica a cada 5 segundos)
python scripts/log_analysis/realtime_monitor.py
# Monitor com intervalo personalizado
python scripts/log_analysis/realtime_monitor.py --interval 10
# Modo verboso (mostra todos os logs)
python scripts/log_analysis/realtime_monitor.py --verbose
# Ajustar limite de alertas
python scripts/log_analysis/realtime_monitor.py --threshold 10
# Especificar banco de dados
python scripts/log_analysis/realtime_monitor.py --db-path logs/application.db
📊 Tipos de Análise
Problemas Detectados
Erros de Importação
ImportError,ModuleNotFoundError- Variáveis não definidas (
not defined) - Problemas de estrutura de pacotes
Problemas de Performance
- Operações que demoram mais de 1 segundo
- Análise de tempo de resposta
- Identificação de gargalos
Erros Críticos
- Exceções não tratadas
- Falhas de servidor
- Problemas de memória
Eventos do Sistema
- Inicialização do Gradio
- Mudanças de configuração
- Atividade de módulos
Relatórios Gerados
- Distribuição por Nível: Contagem de logs por severidade
- Módulos Mais Ativos: Ranking de módulos por atividade
- Timeline: Atividade por hora com gráfico visual
- Problemas Críticos: Lista detalhada de erros e warnings
- Análise de Performance: Operações lentas identificadas
🎨 Recursos Visuais
Monitor em Tempo Real
Cores por Severidade:
- 🚨 Vermelho: Problemas críticos (memória, servidor)
- ⚠️ Amarelo: Problemas médios (importação, Gradio)
- ℹ️ Azul: Informações e problemas menores
Estatísticas em Tempo Real:
- Contador de logs verificados
- Número de alertas gerados
- Timestamp atual
Relatórios de Análise
- Gráficos ASCII: Timeline visual de atividade
- Emojis Informativos: Categorização visual dos problemas
- Formatação Estruturada: Seções bem organizadas
🔧 Configuração Avançada
Variáveis de Ambiente
# Definir caminho padrão do banco de logs
export LOG_DB_PATH="logs/application.db"
# Configurar intervalo padrão do monitor
export MONITOR_INTERVAL=5
Personalização de Padrões
Os scripts podem ser facilmente modificados para detectar padrões específicos:
# Em advanced_log_analyzer.py
self.patterns = {
'custom_error': re.compile(r'seu_padrao_aqui', re.IGNORECASE),
# ... outros padrões
}
📈 Casos de Uso Comuns
1. Debugging de Problemas de Importação
# Foca apenas em erros de importação
python scripts/log_analysis/advanced_log_analyzer.py --hours 1 | grep -A5 "ERROS DE IMPORTAÇÃO"
2. Monitoramento Durante Deploy
# Monitor em tempo real durante atualizações
python scripts/log_analysis/realtime_monitor.py --verbose --interval 2
3. Análise de Performance Semanal
# Relatório completo da semana
python scripts/log_analysis/advanced_log_analyzer.py --hours 168 --output relatorio_semanal.txt
4. Exportação para Análise Externa
# Dados em JSON para ferramentas externas
python scripts/log_analysis/advanced_log_analyzer.py --json logs_data.json --quiet
🛠️ Troubleshooting
Problemas Comuns
"Banco de dados não encontrado"
- Verifique se a aplicação está rodando
- Confirme o caminho com
--db-path - Certifique-se de que logs estão sendo gerados
"Nenhum log encontrado"
- Reduza o período com
--hours - Verifique se há atividade na aplicação
- Confirme configuração de logging
- Reduza o período com
Monitor não mostra alertas
- Use
--verbosepara ver todos os logs - Ajuste
--thresholdse necessário - Verifique padrões de detecção
- Use
Logs de Debug
Para debug dos próprios scripts:
# Ativar debug do Python
PYTHONPATH=. python -v scripts/log_analysis/advanced_log_analyzer.py
📝 Contribuição
Para adicionar novos padrões de detecção ou melhorar os scripts:
- Modifique os padrões regex nas classes
- Adicione novos tipos de análise
- Implemente novos formatos de saída
- Teste com dados reais da aplicação
🔗 Integração
Estes scripts podem ser integrados com:
- CI/CD: Análise automática após deploys
- Monitoramento: Alertas via webhook
- Dashboards: Dados JSON para visualização
- Cron Jobs: Relatórios periódicos automáticos
Desenvolvido para o Sistema de Análise de Mercado
Versão 1.0.0 - Scripts de Análise Avançada de Logs