Como o AppSignal agrupa erros
Quando sua aplicação reporta uma exceção, o AppSignal a agrupa em uma issue com outras ocorrências do mesmo tipo de erro, na mesma action e namespace. Um único bug que dispara milhares de vezes vira uma issue para triagem, e não milhares de alertas separados. Cada issue mantém um conjunto de traces: ocorrências representativas com o backtrace completo, metadados da requisição (como hostname, revision e caminho da requisição) e quaisquer tags que você adicionar.Veja os erros que um deploy introduziu
O filtro Pick a revision na página de erros permite restringir a lista de erros a um deploy ou a um período. Abra-o para escolher um escopo, como By Revision (deploy), ou By Timeframe, que cobre um intervalo de tempo.
O filtro de erros com New errors selecionado e uma revision escolhida
- Most recent revisions: erros vistos pela primeira vez desde as revisions mais recentes de cada serviço.
- A specific revision: erros vistos pela primeira vez naquele deploy.
- A timeframe: erros vistos pela primeira vez dentro desse intervalo de tempo. Escolha um horário de início e fim, ou um predefinido como Last 24 hours ou Last 7 days.
new_only da ferramenta get_exception_incidents.
Triagem e notificações
Cada issue pode ser atribuída a um membro da equipe, receber um estado e uma severidade, e ter suas próprias configurações de notificação. O AppSignal notifica você através dos canais configurados (e-mail, Slack e outras integrações) quando um novo erro é detectado.Namespaces
Os erros são agrupados por namespace, para que você possa separar requisições web de jobs em segundo plano. Os namespaces padrão são Web e Background, e você pode configurar namespaces personalizados. Veja Namespaces para detalhes.Alertas sobre taxas de erro
Além das notificações por erro, a Anomaly detection pode alertar você quando a taxa de erros de uma aplicação ou namespace ultrapassa um limite definido.Reportando exceções tratadas
Se você mesmo capturar uma exceção, ainda pode reportá-la ao AppSignal usando os métodos auxiliares fornecidos pelo seu SDK. Os nomes exatos dos helpers variam por SDK, mas o objetivo é o mesmo: manter o erro vinculado ao trace, ou enviá-lo com contexto útil.- Ruby:
report_error,set_erroresend_error - Elixir:
Appsignal.set_error/2eAppsignal.send_error/3 - Node.js:
setError()esendError() - Python:
set_erroresend_error - PHP: Tratamento de exceções
- JavaScript front-end: Tratamento de erros
Adicione contexto de depuração
Para facilitar a investigação de erros, adicione mais contexto com:Veja também
- A gem debug do Ruby: breakpoints, execução passo a passo e a pilha de chamadas: use a gem
debugdo Ruby para investigar um problema enquanto o reproduz localmente. - params.expect: strong parameters no Rails 8: o Rails 8 adiciona o
params.expectpara permitir e exigir parâmetros em uma única etapa. Ele rejeita formatos de parâmetros inesperados como requisições inválidas.