Este guia fornece etapas diagnósticas de Nível 1 (L1) para solução de problemas em implantações On-Premise do EKB. Essas etapas ajudam a identificar problemas comuns com containers, bancos de dados, serviços e recursos do sistema.
Pré-requisitos: Você precisa de acesso SSH ao servidor/VM do cliente onde o EKB está implantado, e permissões apropriadas para executar comandos Docker e acessar logs de containers.
Verificações de Status dos Containers
Verificar Status de Todos os Containers
Primeiro, verifique quais containers estão em execução e seu status de saúde:
Containers Esperados:
web - Aplicação frontend
api ou fastapi_backend - Servidor API backend
worker ou celery_worker - Worker(s) do Celery
redis - Cache Redis
rabbitmq - Fila de mensagens RabbitMQ
supabase-studio - Supabase Studio
supabase-kong - API Gateway Kong
supabase-auth - Serviço de autenticação
supabase-db ou postgres - Banco de dados PostgreSQL
- Outros serviços Supabase (storage, meta, etc.)
O Que Verificar:
- Todos os containers devem estar no status “Up”
- Nenhum container deve estar no estado “Restarting” ou “Exited”
- Verificações de saúde devem mostrar “healthy” quando aplicável
Se os containers estiverem parados ou reiniciando:
Logs dos Containers Backend
Verificar Logs do Container API
Os logs do container API do backend contêm informações críticas sobre erros, conexões de banco de dados e problemas de serviço:
O Que Procurar:
- Erros de conexão com banco de dados
- Falhas de conexão com Redis
- Problemas de conexão com RabbitMQ
- Erros de autenticação
- Erros de endpoint da API (500, 503, etc.)
- Erros de importação/exportação
- Erros de processamento da Base de Conhecimento
- Falhas de tarefas do worker
Verificar Logs do Container Worker
Os containers worker lidam com tarefas em segundo plano (processamento de KB, embeddings, etc.):
O Que Procurar:
- Erros de execução de tarefas
- Problemas de memória
- Erros de tempo limite
- Erros de conexão com banco de dados nos workers
- Falhas de sincronização da Base de Conhecimento
- Erros de geração de embeddings
Verificar Logs do Container Web
Os logs do container frontend podem revelar problemas de conexão com UI e API:
O Que Procurar:
- Erros de build
- Falhas de conexão com API
- Problemas com variáveis de ambiente
- Erros de vinculação de porta
Status do Banco de Dados
Verificar Status do Banco de Dados PostgreSQL/Supabase
O Que Verificar:
- O container do banco de dados está em execução
- Sem erros de conexão nos logs
- O banco de dados não está cheio (verifique o espaço em disco)
- Conexões ativas estão dentro dos limites
- Sem consultas longas bloqueando operações
Verificar Conectividade do Banco de Dados a partir da API
Verificar Migrações do Banco de Dados
Status do Redis
Verificar Container Redis
O Que Verificar:
- O Redis está respondendo ao ping
- Uso de memória está dentro dos limites
- Sem erros de conexão
- Sem erros de evição (memória cheia)
Testar Redis a partir do Container API
Status do RabbitMQ
Verificar Container RabbitMQ
O Que Verificar:
- O container está em execução
- Sem erros de conexão
- As filas estão processando mensagens
- Sem acumulação de mensagens
Verificar RabbitMQ a partir da API
Recursos do Sistema
Verificar Espaço em Disco
Pouco espaço em disco pode causar problemas no banco de dados, armazenamento e containers:
O Que Verificar:
- A partição raiz tem espaço suficiente (>20% livre recomendado)
- Os volumes Docker não estão cheios
- O diretório de dados do banco de dados tem espaço
- O armazenamento Supabase tem espaço
Verificar Uso de Memória
O Que Verificar:
- O sistema tem memória disponível
- Os containers não estão atingindo os limites de memória
- Sem kills OOM (Out of Memory) nos logs
Verificar Uso de CPU
Conectividade de Rede
Verificar Rede dos Containers
Verificar Disponibilidade de Portas
Variáveis de Ambiente
Verificar Configuração de Ambiente
O Que Verificar:
- As strings de conexão do banco de dados estão corretas
- Os nomes de host do Redis e RabbitMQ estão corretos
- As URLs da API estão configuradas corretamente
- As variáveis de ambiente necessárias estão definidas
- Sem erros de digitação nos nomes das variáveis
Permissões de Arquivos
Verificar Permissões de Arquivos e Diretórios
O Que Verificar:
- Os diretórios da aplicação são legíveis
- O socket Docker tem permissões corretas
- Os mounts de volumes têm permissões apropriadas
- Os arquivos de certificado são acessíveis
Verificações Específicas por Serviço
Se a Base de Conhecimento não estiver atualizando ou processando:
Problemas de Autenticação
Padrões Comuns de Erros
Sintomas:
- Erros “Connection refused”
- Erros “Too many connections”
- Erros de tempo limite
Etapas Diagnósticas:
- Verifique se o container do banco de dados está em execução:
docker ps | grep db
- Verifique os logs do banco de dados:
docker logs supabase-db
- Verifique os limites de conexão:
docker exec supabase-db psql -U postgres -c "SHOW max_connections;"
- Verifique as conexões ativas:
docker exec supabase-db psql -U postgres -c "SELECT count(*) FROM pg_stat_activity;"
- Verifique o DATABASE_URL nas variáveis de ambiente
Sintomas:
- “Connection refused” para Redis
- Falhas de cache
- Problemas de sessão
Etapas Diagnósticas:
- Verifique o container Redis:
docker ps | grep redis
- Teste o Redis:
docker exec redis redis-cli ping
- Verifique os logs do Redis:
docker logs redis
- Verifique o nome de host do Redis nas variáveis de ambiente
Falhas de Tarefas do Worker
Sintomas:
- Tarefas não sendo concluídas
- Base de Conhecimento não sincronizando
- Tarefas em segundo plano falhando
Etapas Diagnósticas:
- Verifique os logs do worker:
docker logs worker
- Verifique o status do container worker:
docker ps | grep worker
- Verifique as filas do RabbitMQ: Acesse a interface de gerenciamento do RabbitMQ
- Verifique problemas de memória:
docker stats worker
Problemas de Armazenamento/Upload de Arquivos
Sintomas:
- Uploads de arquivo falhando
- Erros “File too large”
- Cota de armazenamento excedida
Etapas Diagnósticas:
- Verifique o espaço em disco:
df -h
- Verifique os logs do armazenamento Supabase:
docker logs supabase-storage
- Verifique os limites de tamanho de arquivo na configuração do Supabase
- Verifique a configuração do bucket de armazenamento
Script de Diagnóstico Rápido
Crie um script de diagnóstico para executar todas as verificações de uma vez:
Salve como diagnostics.sh, torne executável: chmod +x diagnostics.sh, e execute: ./diagnostics.sh
Ao escalar para suporte L2, forneça:
- Status dos Containers: Saída de
docker ps -a
- Logs Recentes: Últimas 100-200 linhas dos containers relevantes
- Recursos do Sistema: Saída de
df -h e free -h
- Mensagens de Erro: Mensagens de erro específicas dos logs
- Configuração: Nomes das variáveis de ambiente (não valores) que estão definidos
- Linha do Tempo: Quando o problema começou
- Impacto: Qual funcionalidade está afetada
Entre em Contato com o Suporte: support@automationanywhere.com
Recursos Adicionais