Sha256: 7e7208945e08cac3c7bdfc0edfb461b18f0ead089a8d6821cad2f9eee1ff2791
Contents?: true
Size: 948 Bytes
Versions: 106
Compression:
Stored size: 948 Bytes
Contents
module ScoutApm module ServerIntegrations class Puma attr_reader :logger def initialize(logger) @logger = logger end def name :puma end def forking? return false unless defined?(::Puma) options = ::Puma.cli_config.instance_variable_get(:@options) options[:preload_app] rescue false end def present? defined?(::Puma) && (File.basename($0) =~ /\Apuma/) end def install old = ::Puma.cli_config.options[:before_worker_boot] || [] new = Array(old) + [Proc.new do logger.info "Installing Puma worker loop." ScoutApm::Agent.instance.start_background_worker end] ::Puma.cli_config.options[:before_worker_boot] = new rescue logger.warn "Unable to install Puma worker loop: #{$!.message}" end def found? true end end end end
Version data entries
106 entries across 106 versions & 1 rubygems