Quando um app falha, a primeira reação é adivinhar. O caminho mais rápido é olhar o log. Ele é o diário do programa: o que aconteceu, quando e, em caso de erro, onde.
O que é um log
Log é uma linha de texto registrada pelo sistema ou pelo seu código, em geral com data e hora, nível de importância e mensagem. Ele pode aparecer no terminal, em um arquivo ou em um painel de serviço de hospedagem.
Níveis comuns
- Debug: detalhes para quem está desenvolvendo.
- Info: eventos normais, como usuário fez login.
- Warning: algo estranho, mas que não parou o programa.
- Error: falha que impediu uma ação.
- Critical ou fatal: falha grave que pode derrubar o sistema.
Os nomes variam conforme a linguagem e a biblioteca.
Como ler uma mensagem de erro
- Leia a última linha ou a primeira, conforme a linguagem. Em geral, ela diz o tipo do erro, como arquivo não encontrado ou valor nulo.
- Leia a descrição. Ela costuma dizer o que faltou ou estava errado.
- Procure o arquivo e o número da linha do seu código no stack trace. Ignore, no início, as linhas de bibliotecas externas.
- Reproduza o erro e veja se o log muda.
- Se não entender, busque a mensagem exata em um buscador, sem trechos pessoais.
O que registrar
Bons logs respondem a três perguntas: o que tentava fazer, com quais identificadores e o que deu errado. Exemplos: pedido 123 não pôde ser salvo, falha na conexão com o banco. Evite mensagens vagas como deu erro.
O que nunca registrar
- Senhas, tokens e chaves de API.
- Números de cartão, documentos e dados pessoais completos.
- Conteúdo de mensagens privadas.
Logs costumam ser compartilhados em suporte e fóruns, então um vazamento ali é fácil. Veja também variáveis de ambiente para guardar segredos.
Ferramentas
Para apps pequenos, os logs da hospedagem bastam. Conforme o projeto cresce, serviços de monitoramento agrupam erros iguais e avisam por e-mail. Escolha pelo plano e pela política de dados do serviço.