Module: ScoutApm::ErrorService

Defined in:
lib/scout_apm/error_service.rb,
lib/scout_apm/error_service/payload.rb,
lib/scout_apm/error_service/railtie.rb,
lib/scout_apm/error_service/sidekiq.rb,
lib/scout_apm/error_service/notifier.rb,
lib/scout_apm/error_service/middleware.rb,
lib/scout_apm/error_service/error_buffer.rb,
lib/scout_apm/error_service/error_record.rb,
lib/scout_apm/error_service/periodic_work.rb,
lib/scout_apm/error_service/ignored_exceptions.rb

Defined Under Namespace

Classes: ErrorBuffer, ErrorRecord, IgnoredExceptions, Middleware, Notifier, Payload, PeriodicWork, Railtie, Sidekiq

Constant Summary collapse

API_VERSION =
"1"
HEADERS =
{
  "Content-type" => "application/json",
  "Accept" => "application/json"
}

Class Method Summary collapse

Class Method Details

.capture(exception, params = {}) ⇒ Object

Public API to force a given exception to be captured. Still obeys the ignore list Used internally by SidekiqException



17
18
19
20
21
22
23
24
# File 'lib/scout_apm/error_service.rb', line 17

def self.capture(exception, params = {})
  return if disabled?

  context = ScoutApm::Agent.instance.context
  return if context.ignored_exceptions.ignore?(exception)

  context.errors_buffer.capture(exception, env)
end

.disabled?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/scout_apm/error_service.rb', line 30

def self.disabled?
  !enabled?
end

.enabled?Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/scout_apm/error_service.rb', line 26

def self.enabled?
  ScoutApm::Agent.instance.context.config.value("errors_enabled")
end