Sha256: 82cb8724c6439ce2734078970c785abad5f0dbcfabd3bdaf31de146054d60454
Contents?: true
Size: 1.68 KB
Versions: 5
Compression:
Stored size: 1.68 KB
Contents
require "httparty" require "logger" require "json" require "socket" require "rack" require "ostruct" require "raygun/version" require "raygun/configuration" require "raygun/client" require "raygun/middleware/rack_exception_interceptor" require "raygun/testable" require "raygun/railtie" if defined?(Rails) module Raygun # used to identify ourselves to Raygun CLIENT_URL = "https://github.com/MindscapeHQ/raygun4ruby" CLIENT_NAME = "Raygun4Ruby Gem" class << self include Testable # Configuration Object (instance of Raygun::Configuration) attr_writer :configuration def setup yield(configuration) end def configuration @configuration ||= Configuration.new end def default_configuration configuration.defaults end def track_exception(exception_instance, env = {}) if should_report?(exception_instance) log("[Raygun] Tracking Exception...") Client.new.track_exception(exception_instance, env) end rescue Exception => e if configuration.failsafe_logger failsafe_log("Problem reporting exception to Raygun: #{e.class}: #{e.message}\n\n#{e.backtrace.join("\n")}") else raise e end end def track_exceptions yield rescue => e track_exception(e) end def log(message) configuration.logger.info(message) if configuration.logger end def failsafe_log(message) configuration.failsafe_logger.info(message) end private def should_report?(exception) return false if configuration.silence_reporting return false if configuration.ignore.flatten.include?(exception.class.to_s) true end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
raygun4ruby-1.1.12 | lib/raygun.rb |
raygun4ruby-1.1.11 | lib/raygun.rb |
raygun4ruby-1.1.9 | lib/raygun.rb |
raygun4ruby-1.1.8 | lib/raygun.rb |
raygun4ruby-1.1.6 | lib/raygun.rb |