class Erorr::Config
Attributes
api_key[RW]
api_url[RW]
enabled_for[RW]
env[RW]
logger[RW]
root[RW]
Public Class Methods
new()
click to toggle source
# File lib/erorr/config.rb, line 12 def initialize @env = ENV['ERORR_ENV'] || ENV['RAILS_ENV'] || ENV['RACK_ENV'] @api_key = ENV['ERORR_API_KEY'] @api_url = 'https://erorr.app/api'.freeze @enabled_for = %w(production staging) @logger = Logger.new(STDOUT) end
Public Instance Methods
load_for(app)
click to toggle source
# File lib/erorr/config.rb, line 37 def load_for(app) @env ||= Rails.env @root = app.root config_file = @root.join 'config/erorr.yml' file_config = YAML.safe_load File.read config_file @api_key = file_config['api_key'] if file_config['api_key'] @api_url = file_config['api_url'] if file_config['api_url'] @enabled_for = file_config['enabled_for'] if file_config['enabled_for'] end
validate()
click to toggle source
# File lib/erorr/config.rb, line 21 def validate unless @api_key logger.warn '[erorr] API-KEY not set, skipping notifications.' return false end unless @enabled_for.include? @env.to_s logger.warn "[erorr] Reporting disabled for environment '#{@env}', skipping notification." return false end true end