Sha256: efe6411a06fc0644f6e8213d46c1bc93ccbaf7467b7694065d51f3c3d157258e

Contents?: true

Size: 509 Bytes

Versions: 5

Compression:

Stored size: 509 Bytes

Contents

if defined?(::Celluloid)
  Appsignal.logger.info('Loading Celluloid integration')

  # 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.

  ::Celluloid.class_eval do
    class << self
      alias shutdown_without_appsignal shutdown

      def shutdown
        Appsignal.stop_extension
        shutdown_without_appsignal
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
appsignal-0.12.beta.32 lib/appsignal/integrations/celluloid.rb
appsignal-0.12.beta.31 lib/appsignal/integrations/celluloid.rb
appsignal-0.12.beta.30 lib/appsignal/integrations/celluloid.rb
appsignal-0.12.beta.29 lib/appsignal/integrations/celluloid.rb
appsignal-0.12.beta.28 lib/appsignal/integrations/celluloid.rb