Module: Exceptify

Defined in:
lib/exceptify.rb,
lib/exceptify/rack.rb,
lib/exceptify/rake.rb,
lib/exceptify/rails.rb,
lib/exceptify/resque.rb,
lib/exceptify/version.rb,
lib/exceptify/notifier.rb,
lib/exceptify/dispatcher.rb,
lib/exceptify/solid_queue.rb,
lib/exceptify/notification.rb,
lib/exceptify/sns_notifier.rb,
lib/exceptify/base_notifier.rb,
lib/exceptify/configuration.rb,
lib/exceptify/email_notifier.rb,
lib/exceptify/slack_notifier.rb,
lib/exceptify/teams_notifier.rb,
lib/exceptify/request_context.rb,
lib/exceptify/datadog_notifier.rb,
lib/exceptify/rails/runner_tie.rb,
lib/exceptify/webhook_notifier.rb,
lib/exceptify/modules/formatter.rb,
lib/exceptify/notifier_registry.rb,
lib/exceptify/modules/error_grouping.rb,
lib/exceptify/modules/backtrace_cleaner.rb,
lib/generators/exceptify/install_generator.rb

Defined Under Namespace

Modules: BacktraceCleaner, ErrorGrouping, Generators, Rails, RakeTaskExtensions, SolidQueue Classes: BaseNotifier, Configuration, DatadogNotifier, Dispatcher, EmailNotifier, Engine, Formatter, Notification, Notifier, NotifierRegistry, Rack, RequestContext, Resque, SlackNotifier, SnsNotifier, TeamsNotifier, UndefinedNotifierError, WebhookNotifier

Constant Summary collapse

VERSION =
"1.0.0"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject



28
29
30
# File 'lib/exceptify.rb', line 28

def configuration
  @configuration ||= Configuration.new
end

Class Method Details

.clear_ignore_conditions!Object



81
82
83
# File 'lib/exceptify.rb', line 81

def clear_ignore_conditions!
  configuration.clear_ignore_conditions!
end

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

Yields:



32
33
34
# File 'lib/exceptify.rb', line 32

def configure
  yield configuration
end

.error_count(error_key) ⇒ Object



97
98
99
# File 'lib/exceptify.rb', line 97

def error_count(error_key)
  configuration.error_count(error_key)
end

.error_groupingObject



137
138
139
# File 'lib/exceptify.rb', line 137

def error_grouping
  configuration.error_grouping
end

.error_grouping=(error_grouping) ⇒ Object



141
142
143
# File 'lib/exceptify.rb', line 141

def error_grouping=(error_grouping)
  configuration.error_grouping = error_grouping
end

.error_grouping_cacheObject



161
162
163
# File 'lib/exceptify.rb', line 161

def error_grouping_cache
  configuration.error_grouping_cache
end

.error_grouping_cache=(error_grouping_cache) ⇒ Object



165
166
167
# File 'lib/exceptify.rb', line 165

def error_grouping_cache=(error_grouping_cache)
  configuration.error_grouping_cache = error_grouping_cache
end

.error_grouping_periodObject



145
146
147
# File 'lib/exceptify.rb', line 145

def error_grouping_period
  configuration.error_grouping_period
end

.error_grouping_period=(error_grouping_period) ⇒ Object



149
150
151
# File 'lib/exceptify.rb', line 149

def error_grouping_period=(error_grouping_period)
  configuration.error_grouping_period = error_grouping_period
end

.fallback_cache_storeObject



169
170
171
# File 'lib/exceptify.rb', line 169

def fallback_cache_store
  configuration.fallback_cache_store
end

.fallback_cache_store=(fallback_cache_store) ⇒ Object



173
174
175
# File 'lib/exceptify.rb', line 173

def fallback_cache_store=(fallback_cache_store)
  configuration.fallback_cache_store = fallback_cache_store
end

.group_error!(exception, options) ⇒ Object



105
106
107
# File 'lib/exceptify.rb', line 105

def group_error!(exception, options)
  configuration.group_error!(exception, options)
end

.ignore_crawlers(crawlers) ⇒ Object



77
78
79
# File 'lib/exceptify.rb', line 77

def ignore_crawlers(crawlers)
  configuration.ignore_crawlers(crawlers)
end

.ignore_if(&block) ⇒ Object



69
70
71
# File 'lib/exceptify.rb', line 69

def ignore_if(&block)
  configuration.ignore_if(&block)
end

.ignore_notifier_if(notifier, &block) ⇒ Object



73
74
75
# File 'lib/exceptify.rb', line 73

def ignore_notifier_if(notifier, &block)
  configuration.ignore_notifier_if(notifier, &block)
end

.ignored?(exception, options) ⇒ Boolean

Returns:

  • (Boolean)


85
86
87
# File 'lib/exceptify.rb', line 85

def ignored?(exception, options)
  configuration.ignored?(exception, options)
end

.ignored_exception?(ignore_array, exception) ⇒ Boolean

Returns:

  • (Boolean)


93
94
95
# File 'lib/exceptify.rb', line 93

def ignored_exception?(ignore_array, exception)
  configuration.ignored_exception?(ignore_array, exception)
end

.ignored_exceptionsObject



121
122
123
# File 'lib/exceptify.rb', line 121

def ignored_exceptions
  configuration.ignored_exceptions
end

.ignored_exceptions=(ignored_exceptions) ⇒ Object



125
126
127
# File 'lib/exceptify.rb', line 125

def ignored_exceptions=(ignored_exceptions)
  configuration.ignored_exceptions = ignored_exceptions
end

.loggerObject



113
114
115
# File 'lib/exceptify.rb', line 113

def logger
  configuration.logger
end

.logger=(logger) ⇒ Object



117
118
119
# File 'lib/exceptify.rb', line 117

def logger=(logger)
  configuration.logger = logger
end

.notification_triggerObject



153
154
155
# File 'lib/exceptify.rb', line 153

def notification_trigger
  configuration.notification_trigger
end

.notification_trigger=(notification_trigger) ⇒ Object



157
158
159
# File 'lib/exceptify.rb', line 157

def notification_trigger=(notification_trigger)
  configuration.notification_trigger = notification_trigger
end

.notifier_ignored?(exception, options, notifier:) ⇒ Boolean

Returns:

  • (Boolean)


89
90
91
# File 'lib/exceptify.rb', line 89

def notifier_ignored?(exception, options, notifier:)
  configuration.notifier_ignored?(exception, options, notifier: notifier)
end

.notifiersObject



65
66
67
# File 'lib/exceptify.rb', line 65

def notifiers
  configuration.notifiers
end

.notify_exception(exception, options = {}, &block) ⇒ Object



48
49
50
# File 'lib/exceptify.rb', line 48

def notify_exception(exception, options = {}, &block)
  Dispatcher.new(configuration).notify_exception(exception, options, &block)
end

.register_notifier(name, notifier_or_options) ⇒ Object Also known as: add_notifier



52
53
54
# File 'lib/exceptify.rb', line 52

def register_notifier(name, notifier_or_options)
  configuration.register_notifier(name, notifier_or_options)
end

.registered_notifier(name) ⇒ Object



61
62
63
# File 'lib/exceptify.rb', line 61

def registered_notifier(name)
  configuration.registered_notifier(name)
end

.reset!Object



36
37
38
# File 'lib/exceptify.rb', line 36

def reset!
  self.configuration = Configuration.new
end

.reset_notifiers!Object



40
41
42
# File 'lib/exceptify.rb', line 40

def reset_notifiers!
  configuration.reset!
end

.save_error_count(error_key, count) ⇒ Object



101
102
103
# File 'lib/exceptify.rb', line 101

def save_error_count(error_key, count)
  configuration.save_error_count(error_key, count)
end

.send_notification?(exception, count) ⇒ Boolean

Returns:

  • (Boolean)


109
110
111
# File 'lib/exceptify.rb', line 109

def send_notification?(exception, count)
  configuration.send_notification?(exception, count)
end

.testing_modeObject



129
130
131
# File 'lib/exceptify.rb', line 129

def testing_mode
  configuration.testing_mode
end

.testing_mode!Object



44
45
46
# File 'lib/exceptify.rb', line 44

def testing_mode!
  configuration.testing_mode!
end

.testing_mode=(testing_mode) ⇒ Object



133
134
135
# File 'lib/exceptify.rb', line 133

def testing_mode=(testing_mode)
  configuration.testing_mode = testing_mode
end

.unregister_notifier(name) ⇒ Object



57
58
59
# File 'lib/exceptify.rb', line 57

def unregister_notifier(name)
  configuration.unregister_notifier(name)
end