Sha256: f9709fb78d80a9941006e9c7ec5aec383fe45c24fe39813759fa9d699c22f0e5
Contents?: true
Size: 802 Bytes
Versions: 5
Compression:
Stored size: 802 Bytes
Contents
module Appsignal class Hooks class CelluloidHook < Appsignal::Hooks::Hook register :celluloid def dependencies_present? defined?(::Celluloid) end def install # Some versions of Celluloid have race conditions while exiting # that can result in a dead lock. We stop appsignal before shutting # down Celluloid so we're sure our thread does not aggravate this situation. # This way we also make sure any outstanding transactions get flushed. ::Celluloid.class_eval do class << self alias shutdown_without_appsignal shutdown def shutdown Appsignal.stop("celluloid") shutdown_without_appsignal end end end end end end end
Version data entries
5 entries across 5 versions & 1 rubygems