Adicionar RunBook
parent
a468162cbd
commit
a560f19486
168
RunBook.md
Normal file
168
RunBook.md
Normal file
@ -0,0 +1,168 @@
|
||||
# Runbook
|
||||
|
||||
Procedimentos para incidentes e operacao do Omnichannel.
|
||||
|
||||
## Sistema fora do ar
|
||||
|
||||
1. Verificar containers da aplicacao:
|
||||
|
||||
```bash
|
||||
docker compose ps
|
||||
```
|
||||
|
||||
2. Ver logs:
|
||||
|
||||
```bash
|
||||
docker compose logs --tail=200 backend
|
||||
docker compose logs --tail=200 frontend
|
||||
```
|
||||
|
||||
3. Reiniciar servico especifico:
|
||||
|
||||
```bash
|
||||
docker compose restart backend
|
||||
```
|
||||
|
||||
## Backend nao sobe
|
||||
|
||||
Verificar:
|
||||
|
||||
- variaveis `.env.development`;
|
||||
- conexao com PostgreSQL externo;
|
||||
- porta 4001 ocupada;
|
||||
- erro de build TypeScript;
|
||||
- conectividade com LDAP/AD, se usado na inicializacao/fluxo.
|
||||
|
||||
Comandos:
|
||||
|
||||
```bash
|
||||
docker compose logs -f backend
|
||||
docker compose build backend
|
||||
```
|
||||
|
||||
## Banco externo indisponivel
|
||||
|
||||
O banco nao roda dentro deste compose. Validar fora do Docker:
|
||||
|
||||
```bash
|
||||
psql "postgresql://$DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME" -c "select 1"
|
||||
```
|
||||
|
||||
Verificar:
|
||||
|
||||
- host e porta;
|
||||
- firewall;
|
||||
- credenciais;
|
||||
- permissao de conexao remota no PostgreSQL;
|
||||
- rota de rede entre VM/container e banco.
|
||||
|
||||
## Migrations nao aplicadas
|
||||
|
||||
Sintoma:
|
||||
|
||||
- erro de tabela/coluna inexistente;
|
||||
- admin nao carrega usuarios;
|
||||
- WhatsApp assignment falha;
|
||||
- conteudos da IA ou agenda falham.
|
||||
|
||||
Confirmar schema:
|
||||
|
||||
```bash
|
||||
psql "postgresql://$DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME" -c "\dt"
|
||||
```
|
||||
|
||||
Aplicar migrations em ordem:
|
||||
|
||||
```bash
|
||||
for file in database/migrations/*.sql; do
|
||||
psql "postgresql://$DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME" -f "$file"
|
||||
done
|
||||
```
|
||||
|
||||
## WhatsApp desconectado
|
||||
|
||||
Sintomas:
|
||||
|
||||
- `/whatsapp/status` nao esta conectado;
|
||||
- frontend pede QR Code;
|
||||
- mensagens nao chegam.
|
||||
|
||||
Acao:
|
||||
|
||||
1. Abrir tela admin `/admin/whatsapp`.
|
||||
2. Ler QR Code.
|
||||
3. Ver logs do backend.
|
||||
4. Se travado, reiniciar backend.
|
||||
|
||||
```bash
|
||||
docker compose restart backend
|
||||
```
|
||||
|
||||
Se persistir, limpar sessao WhatsApp conforme volume configurado.
|
||||
|
||||
## Login LDAP falhando
|
||||
|
||||
Verificar:
|
||||
|
||||
- usuario/senha;
|
||||
- conectividade da VM com LDAP;
|
||||
- `LDAP_URL`;
|
||||
- `LDAP_USER_DN_TEMPLATE`;
|
||||
- certificado LDAPS;
|
||||
- tempo de resposta do AD.
|
||||
|
||||
Logs:
|
||||
|
||||
```bash
|
||||
docker compose logs backend | grep -i ldap
|
||||
```
|
||||
|
||||
## Login Microsoft falhando
|
||||
|
||||
Verificar:
|
||||
|
||||
- redirect URI no Entra ID;
|
||||
- `MICROSOFT_CLIENT_ID`;
|
||||
- `MICROSOFT_CLIENT_SECRET`;
|
||||
- `MICROSOFT_SUCCESS_REDIRECT_URL`;
|
||||
- hora do servidor.
|
||||
|
||||
## Frontend sem dados
|
||||
|
||||
Verificar:
|
||||
|
||||
- `VITE_API_URL`;
|
||||
- CORS `FRONTEND_URL`;
|
||||
- backend ativo;
|
||||
- console do navegador;
|
||||
- rota de rede entre navegador e backend.
|
||||
|
||||
## Fazer backup emergencial
|
||||
|
||||
```bash
|
||||
pg_dump "postgresql://$DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME" > backup-emergencial.sql
|
||||
```
|
||||
|
||||
## Restaurar backup
|
||||
|
||||
Somente com janela de manutencao:
|
||||
|
||||
```bash
|
||||
docker compose stop backend
|
||||
psql "postgresql://$DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME" < backup-emergencial.sql
|
||||
docker compose up -d backend
|
||||
```
|
||||
|
||||
## Escalar para desenvolvimento
|
||||
|
||||
Abrir issue com:
|
||||
|
||||
- horario do erro;
|
||||
- ambiente;
|
||||
- usuario afetado;
|
||||
- chatId se for WhatsApp;
|
||||
- print da tela;
|
||||
- logs backend;
|
||||
- acao tentada;
|
||||
- ultima migration aplicada;
|
||||
- commit/versao em execucao.
|
||||
Loading…
Reference in New Issue
Block a user