Sha256: be8a54052060393364a4c2835e24fb323f23ae12f54ad25dfe1bf8b69de998c7
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
# frozen_string_literal: true require 'elastic_apm/subscriber' module ElasticAPM # @api private class Railtie < Rails::Railtie config.elastic_apm = ActiveSupport::OrderedOptions.new Config::DEFAULTS.each { |option, value| config.elastic_apm[option] = value } initializer 'elastic_apm.initialize' do |app| config = app.config.elastic_apm.merge(app: app).tap do |c| # Prepend Rails.root to log_path if present if c.log_path && !c.log_path.start_with?('/') c.log_path = Rails.root.join(c.log_path) end end begin agent = ElasticAPM.start config if agent agent.instrumenter.subscriber = ElasticAPM::Subscriber.new(agent) app.middleware.insert 0, Middleware end rescue StandardError => e Rails.logger.error "#{Logging::PREFIX}Failed to start: #{e.message}" Rails.logger.debug e.backtrace.join("\n") end end config.after_initialize do require 'elastic_apm/spies/action_dispatch' end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
elastic-apm-2.0.1 | lib/elastic_apm/railtie.rb |
elastic-apm-2.0.0 | lib/elastic_apm/railtie.rb |