class Rails::RollbarRunner
Attributes
Public Class Methods
Public Instance Methods
Source
# File lib/rails/rollbar_runner.rb, line 31 def eval_runner if Gem::Version.new(Rails.version) >= Gem::Version.new('5.1.0') rails5_runner else legacy_runner end end
Source
# File lib/rails/rollbar_runner.rb, line 39 def legacy_runner string_to_eval = File.read(runner_path) ::Rails.module_eval(<<-FILE, __FILE__, __LINE__ + 1) #{string_to_eval} FILE end
Source
# File lib/rails/rollbar_runner.rb, line 26 def prepare_environment require File.expand_path('../environment', APP_PATH) ::Rails.application.require_environment! end
Source
# File lib/rails/rollbar_runner.rb, line 47 def rails5_runner require 'rails/command' Rails::Command.invoke 'runner', ARGV end
Source
# File lib/rails/rollbar_runner.rb, line 64 def railties_gem gem = Gem::Specification.find_by_name('railties') abort 'railties gem not found' unless gem gem end
Source
# File lib/rails/rollbar_runner.rb, line 72 def railties_gem_dir railties_gem.gem_dir end
Source
# File lib/rails/rollbar_runner.rb, line 53 def rollbar_managed yield rescue StandardError => e Rollbar.scope(:custom => { :command => command }).error(e) raise end
Source
# File lib/rails/rollbar_runner.rb, line 20 def run prepare_environment rollbar_managed { eval_runner } end
Source
# File lib/rails/rollbar_runner.rb, line 60 def runner_path "#{railties_gem_dir}/lib/rails/commands/runner.rb" end