Class: Appsignal::Hooks::SidekiqHook Private

Inherits:
Hook show all
Defined in:
lib/appsignal/hooks/sidekiq.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Methods inherited from Hook

#initialize, #installed?, register, #try_to_install

Constructor Details

This class inherits a constructor from Appsignal::Hooks::Hook

Instance Method Details

#dependencies_present?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)
[View source]

8
9
10
# File 'lib/appsignal/hooks/sidekiq.rb', line 8

def dependencies_present?
  defined?(::Sidekiq)
end

#installObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

[View source]

12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/appsignal/hooks/sidekiq.rb', line 12

def install
  require "appsignal/integrations/sidekiq"
  Appsignal::Minutely.probes.register :sidekiq, Appsignal::Probes::SidekiqProbe

  ::Sidekiq.configure_server do |config|
    config.error_handlers << \
      Appsignal::Integrations::SidekiqErrorHandler.new

    config.server_middleware do |chain|
      if chain.respond_to? :prepend
        chain.prepend Appsignal::Integrations::SidekiqMiddleware
      else
        chain.add Appsignal::Integrations::SidekiqMiddleware
      end
    end
  end
end