No seu computador, o console.log (Node.js) e o print (Python) aparecem na tela. No servidor não há tela, e a pergunta é onde foram parar. A resposta curta: na hospedagem compartilhada, o que a aplicação escreve vai para o registro do Passenger, o arquivo que indica no campo Passenger log file da tela da aplicação; num VPS, depende de quem a inicia (PM2, systemd ou Docker). Sem esse registro, depurar uma aplicação é adivinhar.
Onde está o registro, em cada caso
| Onde corre |
Onde ver |
Comando ou local |
| Node.js ou Python no cPanel |
No arquivo do campo Passenger log file (tela do «Setup Node.js App» ou do «Setup Python App»). |
Indique um arquivo dentro da pasta da aplicação, guarde, reinicie e repita o pedido. Abra-o no Gerenciador de Arquivos, ou no Terminal com tail -n 100 arquivo.log. |
| VPS com PM2 |
Nos registros do PM2. |
pm2 logs nome ou pm2 logs --lines 100 |
| VPS com systemd |
No diário do sistema. |
journalctl -u nome -n 100, e -f para seguir ao vivo |
| Docker |
Nos registros do contêiner. |
docker logs nome ou docker compose logs -f serviço |
O registro geral de erros do site é outra coisa: apanha erros do servidor web, não o que a sua aplicação escreve. Para esse, veja erros 500, 403, 404 e 508.
Pôr a escrever registros que se leem
| 1 |
Defina o arquivo de registro na tela da aplicação (no cPanel), ou use o do PM2, do systemd ou do Docker (num VPS).
|
|
| 2 |
Escreva com sentido. Em vez de console.log("aqui"), diga o quê e com que valor: o método e o caminho do pedido, o identificador do registro que foi lido, o erro completo. Nunca escreva senhas, chaves nem dados pessoais.
|
|
| 3 |
Em Python, evite o atraso. Quando a saída vai para um arquivo, o print pode ficar guardado em memória e só aparecer mais tarde. Use print("texto", flush=True), ou o módulo logging, que escreve de imediato. A variável de ambiente PYTHONUNBUFFERED=1 tem o mesmo efeito para toda a aplicação.
|
|
| 4 |
Reinicie e repita. Faça o pedido que falha e leia as últimas linhas: normalmente a causa está lá. Se a aplicação nem inicia, veja as causas do erro 503.
|
|
Um registro sem limite acaba por encher o disco. Numa conta compartilhada, um arquivo que cresce todos os dias gasta espaço, e o espaço é limitado. Apague ou arquive de vez em quando, ou limite o tamanho (em Python, o RotatingFileHandler do módulo logging faz isso). Num VPS, o diário do sistema e os registros do Docker também crescem: veja o Docker a encher o disco.
|
Em tempo real, no Terminal. Se a conta tem terminal (o Terminal do cPanel), tail -f arquivo.log mostra as linhas à medida que chegam: abra o site em outra aba e veja o que aparece. Para sair, Ctrl+C.
|
|
Tem o registro à frente e não percebe a última linha? Envie-nos o domínio, a hora do erro e essa linha.
Abrir um pedido de suporte
|
PRODUTO RECOMENDADO Hospedagem de sites com cPanel Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom) Ver planos |