Module: Errordeck

Defined in:
lib/errordeck/middleware/rack.rb,
lib/errordeck.rb,
lib/errordeck/version.rb,
lib/errordeck/wrapper.rb,
lib/errordeck/scrubber/url.rb,
lib/errordeck/configuration.rb,
lib/errordeck/scrubber/base.rb,
lib/errordeck/request_handler.rb,
lib/errordeck/scrubber/cookie.rb,
lib/errordeck/scrubber/header.rb,
lib/errordeck/middleware/rails.rb,
lib/errordeck/errordeck/context.rb,
lib/errordeck/errordeck/backtrace.rb,
lib/errordeck/scrubber/query_param.rb,
lib/errordeck/errordeck/issue/event.rb,
lib/errordeck/errordeck/issue/request.rb,
lib/errordeck/errordeck/issue/exception.rb,
lib/errordeck/errordeck/issue/stacktrace.rb

Overview

rack middleware to capture request context and exception to send to errordeck Compare this snippet from lib/errordeck/middleware/rack.rb:

Defined Under Namespace

Modules: Middleware, Scrubber Classes: Backtrace, Configuration, Context, Error, Event, Exception, Railtie, Request, RequestHandler, Stacktrace, Wrapper

Constant Summary collapse

VERSION =
"0.1.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



19
20
21
# File 'lib/errordeck/configuration.rb', line 19

def configuration
  @configuration
end

Class Method Details

.capture(exception:, user: nil, tags: nil, capture: true) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/errordeck.rb', line 47

def capture(exception:, user: nil, tags: nil, capture: true)
  wrap(capture) do |b|
    b.user_context = user if user
    b.tags_context = tags if tags
    b.capture(exception)
  end
end

.configure {|configuration| ... } ⇒ Object

Yields:



21
22
23
24
# File 'lib/errordeck/configuration.rb', line 21

def configure
  self.configuration ||= Configuration.new
  yield(configuration)
end

.error(message:, extra: nil) ⇒ Object



27
28
29
# File 'lib/errordeck.rb', line 27

def error(message:, extra: nil)
  generate_event(level: "error", message: message, extra: extra)
end

.fatal(message:, extra: nil) ⇒ Object



31
32
33
# File 'lib/errordeck.rb', line 31

def fatal(message:, extra: nil)
  generate_event(level: "fatal", message: message, extra: extra)
end

.generate_event(level:, message:, extra: nil, capture: true) ⇒ Object



35
36
37
38
39
# File 'lib/errordeck.rb', line 35

def generate_event(level:, message:, extra: nil, capture: true)
  wrap(capture) do |b|
    b.message(level, message, extra)
  end
end

.info(message:, extra: nil) ⇒ Object



19
20
21
# File 'lib/errordeck.rb', line 19

def info(message:, extra: nil)
  generate_event(level: "info", message: message, extra: extra)
end

.message(level:, message:, extra: nil, capture: true) ⇒ Object



41
42
43
44
45
# File 'lib/errordeck.rb', line 41

def message(level:, message:, extra: nil, capture: true)
  wrap(capture) do |b|
    b.message(level, message, extra)
  end
end

.warning(message:, extra: nil) ⇒ Object



23
24
25
# File 'lib/errordeck.rb', line 23

def warning(message:, extra: nil)
  generate_event(level: "warning", message: message, extra: extra)
end

.wrap(capture = true) ⇒ Object



55
56
57
58
59
60
61
62
63
64
65
# File 'lib/errordeck.rb', line 55

def wrap(capture = true)
  wrapper = Wrapper.new
  begin
    yield(wrapper)
    wrapper.send_event if capture
  rescue Exception => e
    wrapper.capture(e)
    wrapper.send_event if capture
    raise e
  end
end