class RollbarConfigurator

Constants

ERROR_MESSAGE

Public Class Methods

new(configuration) click to toggle source
# File lib/production_toolkit/rollbar_configurator.rb, line 23
def initialize(configuration)
  @configuration = configuration
end

Public Instance Methods

configure() click to toggle source
# File lib/production_toolkit/rollbar_configurator.rb, line 27
def configure
  notify_missing_configuration! unless @configuration.present?
  configure_rollbar
end
rollbar_config() click to toggle source
# File lib/production_toolkit/rollbar_configurator.rb, line 32
def rollbar_config
  @rollbar_config ||= RollbarConfig.new(@configuration.symbolize_keys)
end

Private Instance Methods

configure_rollbar() click to toggle source
# File lib/production_toolkit/rollbar_configurator.rb, line 38
def configure_rollbar
  return unless rollbar_config.enabled?

  require 'rollbar'

  ::Rollbar.configure do |config|
    config.enabled      = true
    config.access_token = rollbar_config.server_token
    config.environment  = rollbar_config.environment
    config.exception_level_filters.merge!('ActionController::RoutingError' => 'ignore')
    config.scrub_fields |= [:access_token, :client_token, :api_key]
    config.scrub_headers |= ["X-API-KEY", :access_token, :client_token, :api_key]
  end
end
notify_missing_configuration!() click to toggle source
# File lib/production_toolkit/rollbar_configurator.rb, line 53
def notify_missing_configuration!
  fail ERROR_MESSAGE
end