Sha256: 4c6dfd9aa0425b4ec4ee8369c3b6f049cf41a7b78fd838e32e82eda82f9dbd38

Contents?: true

Size: 1.02 KB

Versions: 2

Compression:

Stored size: 1.02 KB

Contents

require "rubygems"

require "bugsnag/version"
require "bugsnag/configuration"
require "bugsnag/notification"
require "bugsnag/helpers"

require "bugsnag/rack"
require "bugsnag/railtie" if defined?(Rails::Railtie)

module Bugsnag
  LOG_PREFIX = "** [Bugsnag] "

  class << self
    def configure
      yield(configuration)      
      log "Bugsnag exception handler #{VERSION} ready, api_key=#{configuration.api_key}" if configuration.api_key
    end

    def notify(exception, session_data={})
      opts = {
        :releaseStage => configuration.release_stage,
        :projectRoot => configuration.project_root.to_s,
        :appVersion => configuration.app_version
      }.merge(session_data)

      # Send the notification
      notification = Notification.new(configuration.api_key, exception, opts)
      notification.deliver
    end

    def log(message)
      configuration.logger.info(LOG_PREFIX + message) if configuration.logger
    end

    def configuration
      @configuration ||= Bugsnag::Configuration.new
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bugsnag-1.0.2 lib/bugsnag.rb
bugsnag-1.0.1 lib/bugsnag.rb