Sha256: 4b2182ed3aba49d7a1f1b473bbb2db2509910a331ca102a775a6030a43c1fe6a
Contents?: true
Size: 1.05 KB
Versions: 7
Compression:
Stored size: 1.05 KB
Contents
module Appsignal class Hooks class RakeHook < Appsignal::Hooks::Hook register :rake def dependencies_present? defined?(::Rake::Task) end def install ::Rake::Task.class_eval do alias :invoke_without_appsignal :invoke def invoke(*args) if Appsignal.active? invoke_with_appsignal(*args) else invoke_without_appsignal(*args) end end def invoke_with_appsignal(*args) invoke_without_appsignal(*args) rescue => error transaction = Appsignal::Transaction.create( SecureRandom.uuid, Appsignal::Transaction::BACKGROUND_JOB, Appsignal::Transaction::GenericRequest.new( :params => args ) ) transaction.set_action(name) transaction.set_error(error) transaction.complete! Appsignal.stop raise error end end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems