Используя собственный ErrorLogger, который я написал, я пытаюсь найти способ регистрировать все ошибки, происходящие в любой из моих задач с граблями. Другой альтернативой было бы просто добавить блок begin-rescue к каждому отдельному файлу * .rake:
# lib/tasks/example.rake
require 'error_logger/error_logger'
namespace :example do
task generic_example: :environment do
begin
...task code here
rescue Exception => e
ErrorLogger.log(e)
raise e
end
end
end
Но делать это для всех файлов задач не очень DRY, поэтому мне интересно, есть ли это более разумный способ. *
Как лучше всего сделать что-то подобное в задачах rake, записав лог c только один раз и применив его ко всем задачам rake? Может быть, есть какой-то код, который я мог бы добавить в Rakefile для этого?