Ignorar erros
A configuração do AppSignal permite ignorar erros. Ao fornecer uma lista de erros específicos, o AppSignal não enviará alertas quando esses erros forem levantados.Appsignal.set_error/3
Se você quiser fazer rescue de exceções na sua aplicação para evitar crashes, mas ainda quiser rastrear a ocorrência, você pode usarAppsignal.set_error/2 para adicionar a exceção à
transação atual do AppSignal:
Erlang
A integração do AppSignal faz o possível para converter erros levantados do Erlang em exceções Elixir. Por exemplo, um:badarg
levantado pelo Erlang é automaticamente convertido em um ArgumentError. No entanto, às vezes o melhor que ela consegue fazer é envolver o erro originado do Erlang em um ErlangError.
Como esses não fornecem muito insight sobre o problema subjacente, recomendamos adicionar informações de dentro da sua aplicação, capturando o erro, criando uma exceção Elixir você mesmo e adicionando-a ao span atual usando a função set_error/2.
Em versões anteriores à 2.1.0, use catch e Appsignal.send_error/3:
send_error, mas ainda quiser reportar o cenário como um erro, também é possível inicializar uma struct de erro personalizada.
Appsignal.send_error/3 para enviar erros
sem uma transação AppSignal.
Appsignal.send_error/3
O AppSignal fornece um mecanismo para rastrear erros que ocorrem em código que não está em um contexto web ou de background job, como Mix tasks. Isso é útil para instrumentação que não cria automaticamente transações AppSignal para fazer profile. Você pode usar a funçãoAppsignal.send_error/3 para
enviar diretamente uma exceção para o AppSignal a partir de qualquer lugar do seu código sem
iniciar primeiro uma transação AppSignal.
send_error, mas ainda quiser reportar o cenário como um erro, também é possível inicializar uma struct de erro personalizada.
Metadados adicionais
Para adicionar metadados ao erro enviado, passe uma função como o quarto argumento paraAppsignal.send_errror/4: