Skip to content
This repository was archived by the owner on Feb 26, 2020. It is now read-only.

Commit

Permalink
Add rollbar to track logs
Browse files Browse the repository at this point in the history
Rollbar is an error tracking service that integrates directly with a rails app.

* Docs: https://rollbar.com/docs/notifier/rollbar-gem/
* Rouge/Rollbar docs: https://rollbar.com/rouge/rouge/
  • Loading branch information
edwardloveall committed Apr 11, 2015
1 parent 06758ac commit 82c1517
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 0 deletions.
1 change: 1 addition & 0 deletions .sample.env
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ RACK_ENV=development
SECRET_KEY_BASE=development_secret
HASHIDS_SALT=
GOOGLE_ANALYTICS_ID=UA-XXXXXXXX-Y
ROLLBAR_ACCESS_TOKEN=abcdefghi
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ gem 'pg'
gem 'rack-timeout'
gem 'rails', '4.1.8'
gem 'recipient_interceptor'
gem 'rollbar'
gem 'rouge'
gem 'sass-rails'
gem 'simple_form'
Expand Down
3 changes: 3 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,8 @@ GEM
ffi (>= 0.5.0)
recipient_interceptor (0.1.2)
mail
rollbar (1.5.0)
multi_json (~> 1.3)
rouge (1.8.0)
rspec (3.0.0)
rspec-core (~> 3.0.0)
Expand Down Expand Up @@ -272,6 +274,7 @@ DEPENDENCIES
rack-timeout
rails (= 4.1.8)
recipient_interceptor
rollbar
rouge
rspec-rails (~> 3.0.0)
sass-rails
Expand Down
52 changes: 52 additions & 0 deletions config/initializers/rollbar.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
require 'rollbar/rails'
Rollbar.configure do |config|
# Without configuration, Rollbar is enabled in all environments.
# To disable in specific environments, set config.enabled=false.

config.access_token = ENV['ROLLBAR_ACCESS_TOKEN']

# Here we'll disable in 'test':
if Rails.env.test?
config.enabled = false
end


# By default, Rollbar will try to call the `current_user` controller method
# to fetch the logged-in user object, and then call that object's `id`,
# `username`, and `email` methods to fetch those properties. To customize:
# config.person_method = "my_current_user"
# config.person_id_method = "my_id"
# config.person_username_method = "my_username"
# config.person_email_method = "my_email"

# If you want to attach custom data to all exception and message reports,
# provide a lambda like the following. It should return a hash.
# config.custom_data_method = lambda { {:some_key => "some_value" } }

# Add exception class names to the exception_level_filters hash to
# change the level that exception is reported at. Note that if an exception
# has already been reported and logged the level will need to be changed
# via the rollbar interface.
# Valid levels: 'critical', 'error', 'warning', 'info', 'debug', 'ignore'
# 'ignore' will cause the exception to not be reported at all.
# config.exception_level_filters.merge!('MyCriticalException' => 'critical')
#
# You can also specify a callable, which will be called with the exception instance.
# config.exception_level_filters.merge!('MyCriticalException' => lambda { |e| 'critical' })

# Enable asynchronous reporting (uses girl_friday or Threading if girl_friday
# is not installed)
# config.use_async = true
# Supply your own async handler:
# config.async_handler = Proc.new { |payload|
# Thread.new { Rollbar.process_payload_safely(payload) }
# }

# Enable asynchronous reporting (using sucker_punch)
# config.use_sucker_punch

# Enable delayed reporting (using Sidekiq)
# config.use_sidekiq
# You can supply custom Sidekiq options:
# config.use_sidekiq 'queue' => 'my_queue'
end

0 comments on commit 82c1517

Please sign in to comment.