Skip to content

Commit

Permalink
Use ExceptionNotification via generator generated code
Browse files Browse the repository at this point in the history
Ensure that FoodsoftConfig is loaded before running the initalizers.
This also enables notifaction for Resque.
  • Loading branch information
paroga committed Oct 5, 2017
1 parent b35357d commit 9fbb044
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 28 deletions.
5 changes: 1 addition & 4 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ gem 'recurring_select'
gem 'roo'
gem 'roo-xls'
gem 'spreadsheet'
gem 'exception_notification'
gem 'gaffe'
gem 'ruby-filemagic'
gem 'midi-smtp-server'
Expand All @@ -63,10 +64,6 @@ gem 'foodsoft_discourse', path: 'plugins/discourse'
#gem 'foodsoft_documents', path: 'plugins/documents'


group :production do
gem 'exception_notification'
end

group :development do
gem 'sqlite3'
gem 'mailcatcher'
Expand Down
5 changes: 5 additions & 0 deletions config/initializers/01_load_app_config.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Initial load the default config and database from rails environment
# See config/app_config.yml for further details
# Load Config, start by selecting defaults via current environment
require 'foodsoft_config'
FoodsoftConfig.init
51 changes: 51 additions & 0 deletions config/initializers/exception_notification.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
require 'exception_notification/rails'


require 'resque/failure/multiple'
require 'resque/failure/redis'
require 'exception_notification/resque'

Resque::Failure::Multiple.classes = [Resque::Failure::Redis, ExceptionNotification::Resque]
Resque::Failure.backend = Resque::Failure::Multiple


ExceptionNotification.configure do |config|
# Ignore additional exception types.
# ActiveRecord::RecordNotFound, Mongoid::Errors::DocumentNotFound, AbstractController::ActionNotFound and ActionController::RoutingError are already added.
# config.ignored_exceptions += %w{ActionView::TemplateError CustomError}

# Adds a condition to decide when an exception must be ignored or not.
# The ignore_if method can be invoked multiple times to add extra conditions.
config.ignore_if do |exception, options|
not Rails.env.production?
end

# Notifiers =================================================================

# Email notifier sends notifications by email.
config.add_notifier :email, {
:email_prefix => FoodsoftConfig[:notification]['email_prefix'],
:sender_address => FoodsoftConfig[:notification]['sender_address'],
:exception_recipients => FoodsoftConfig[:notification]['error_recipients']
}

# Campfire notifier sends notifications to your Campfire room. Requires 'tinder' gem.
# config.add_notifier :campfire, {
# :subdomain => 'my_subdomain',
# :token => 'my_token',
# :room_name => 'my_room'
# }

# HipChat notifier sends notifications to your HipChat room. Requires 'hipchat' gem.
# config.add_notifier :hipchat, {
# :api_token => 'my_token',
# :room_name => 'my_room'
# }

# Webhook notifier sends notifications over HTTP protocol. Requires 'httparty' gem.
# config.add_notifier :webhook, {
# :url => 'http://example.com:5555/hubot/path',
# :http_method => :post
# }

end
24 changes: 0 additions & 24 deletions config/initializers/load_app_config.rb

This file was deleted.

0 comments on commit 9fbb044

Please sign in to comment.