Sha256: 42d119560d304fd3441bbb6da4401d8c0a44c02b0054bd47a130a2541b7fc5c4
Contents?: true
Size: 1.31 KB
Versions: 1
Compression:
Stored size: 1.31 KB
Contents
class RollbarConfig attr_reader :server_token, :client_token, :environment def initialize(config) @enabled = config.fetch(:enabled, false) if enabled? @server_token = config.fetch(:server_token) @client_token = config.fetch(:client_token) @environment = config.fetch(:environment) end end def enabled? @enabled end end class RollbarConfigurator ERROR_MESSAGE = 'rollbar not defined in secrets.yml' def initialize(configuration) @configuration = configuration end def configure notify_missing_configuration! unless @configuration.present? configure_rollbar end def rollbar_config @rollbar_config ||= RollbarConfig.new(@configuration.symbolize_keys) end private 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 end end def notify_missing_configuration! fail ERROR_MESSAGE end end config = if defined?(Rails) Rails.application.secrets.rollbar end configurator = RollbarConfigurator.new(config) configurator.configure Rails.application.config.rollbar = configurator.rollbar_config if defined?(Rails)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
production_toolkit-0.1.1 | lib/production_toolkit/initializers/rollbar.rb |