Sua aplicação está usando uma combinação de Rails, Grape, Hanami, Padrino ou Sinatra? Siga nosso guia sobre instrumentação de múltiplas aplicações Rack.
Instalação
Após instalar a gem AppSignal, adicione a integração AppSignal depois de requererhanami/boot no arquivo config.ru.
Tratamento de exceptions
O Hanami não possui nenhum tratamento de exceptions por padrão. O servidor web (como Puma ou Unicorn) mostrará uma página básica de “internal server error” se um erro ocorrer no app. Essas exceptions não tratadas serão reportadas ao AppSignal automaticamente. O guia de tratamento de exceptions do Hanami explica como adicionar tratamento de exceptions customizado em aplicações Hanami para renderizar páginas de erro customizadas. Exceptions tratadas não serão reportadas ao AppSignal automaticamente. Recomendamos adicionar o seguinte código à classe base Action da aplicação encontrada emapp/action.rb para adicionar tratamento de exceptions para StandardError. Dessa forma, não é necessário adicionar tratamento de exceptions a cada classe de action.
No método handle_standard_error, configurado por handle_exception, chame o helper Appsignal.report_error para reportar a exception ao AppSignal e não perder nenhum erro reportado pelo seu app. (Use o helper Appsignal.set_error ao usar a gem Ruby versão 3 ou mais antiga.)
Appsignal.report_error às exceptions do Hanami que você deseja reportar, o AppSignal reportará esses erros sempre que ocorrerem.