Мы используем воздушный тормоз на всей нашей кодовой базе, который отлично работает, за исключением пользовательских классов, которые не наследуются от иерархии Rails (то есть ActiveRecord).notify_airbrake вызывает ошибку на пользовательских классах
Некоторый код:
class Offer
def counter(amount, qty=1)
begin
offers_response = viyet_mage_rest_client.counter_offer(@id.to_i, amount, qty.to_i)
rescue => e
notify_airbrake(e)
offers_response = []
end
end
end
В тормозных щитках мы видим:
NoMethodError: undefined method `notify_airbrake' for Offer:Class
Как ошибка. Я хочу фактическую ошибку, а не ошибку для сообщения об ошибке!
Наш файл airbrake.rb:
if Rails.env.production? || Rails.env.staging?
Airbrake.configure do |config|
config.api_key = Settings.airbrake.api_key
config.secure = true
end
end
Любая помощь будет оценен по достоинству!
Привет! Попробуйте 'Airbrake.notify (e)' вместо 'notify_airbrake (e)'. – kyrylo
'notify_airbrake' предназначен только для контроллеров. ref: https://github.com/airbrake/airbrake/blob/master/lib/airbrake/rails/action_controller.rb – Kris