Sha256: a342b79c36419307fb8cf8ad97130c0308aa87113e23daacb08bdc475b5aa6ba

Contents?: true

Size: 882 Bytes

Versions: 1

Compression:

Stored size: 882 Bytes

Contents

require 'appsignal/careful_logger'

module Appsignal

  class Config
    include Appsignal::CarefulLogger

    DEFAULT_CONFIG = {
      :ignore_exceptions => [],
      :endpoint => 'https://push.appsignal.com/1',
      :slow_request_threshold => 200
    }.freeze

    attr_accessor :root_path, :rails_env

    def initialize(root_path, rails_env, logger=Appsignal.logger)
      @root_path = root_path
      @rails_env = rails_env
      @logger = logger
    end

    def load
      file = File.join(@root_path, 'config/appsignal.yml')
      unless File.exists?(file)
        carefully_log_error "config not found at: #{file}"
        return
      end

      config = YAML.load_file(file)[@rails_env]
      unless config
        carefully_log_error "config for '#{@rails_env}' not found"
        return
      end

      DEFAULT_CONFIG.merge(config.symbolize_keys)
    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
appsignal-0.5.0 lib/appsignal/config.rb