airbrake 3.1.12 → 3.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +61 -0
- data/README.md +36 -17
- data/Rakefile +14 -8
- data/TESTED_AGAINST +1 -0
- data/airbrake.gemspec +3 -3
- data/features/metal.feature +1 -1
- data/features/rails.feature +1 -0
- data/features/rake.feature +4 -0
- data/features/sinatra.feature +72 -1
- data/features/support/rake/Rakefile +14 -4
- data/generators/airbrake/airbrake_generator.rb +5 -5
- data/lib/airbrake.rb +2 -9
- data/lib/airbrake/backtrace.rb +8 -13
- data/lib/airbrake/capistrano.rb +58 -2
- data/lib/airbrake/cli/runner.rb +1 -0
- data/lib/airbrake/configuration.rb +31 -11
- data/lib/airbrake/notice.rb +52 -61
- data/lib/airbrake/rails/controller_methods.rb +7 -3
- data/lib/airbrake/rails/javascript_notifier.rb +56 -31
- data/lib/airbrake/rake_handler.rb +3 -2
- data/lib/airbrake/response.rb +6 -8
- data/lib/airbrake/sender.rb +1 -1
- data/lib/airbrake/sinatra.rb +9 -2
- data/lib/airbrake/user_informer.rb +1 -1
- data/lib/airbrake/version.rb +1 -1
- data/lib/airbrake_tasks.rb +2 -2
- data/lib/rails/generators/airbrake/airbrake_generator.rb +5 -5
- data/lib/templates/javascript_notifier_configuration +12 -0
- data/lib/templates/javascript_notifier_loader +6 -0
- data/resources/notice.xml +2 -1
- data/test/airbrake_tasks_test.rb +2 -2
- data/test/backtrace_test.rb +19 -0
- data/test/capistrano_test.rb +9 -1
- data/test/configuration_test.rb +49 -2
- data/test/controller_methods_test.rb +22 -0
- data/test/helper.rb +29 -155
- data/test/integration.rb +15 -0
- data/test/{catcher_test.rb → integration/catcher_test.rb} +130 -19
- data/test/{javascript_notifier_test.rb → integration/javascript_notifier_test.rb} +0 -1
- data/test/logger_test.rb +11 -11
- data/test/notice_test.rb +8 -2
- data/test/notifier_test.rb +6 -6
- data/test/sender_test.rb +1 -1
- metadata +34 -31
- data/lib/templates/javascript_notifier +0 -20
data/CHANGELOG
CHANGED
|
@@ -1,3 +1,63 @@
|
|
|
1
|
+
Version 3.1.13 - 2013-08-20 09:39:41 +0200
|
|
2
|
+
===============================================================================
|
|
3
|
+
|
|
4
|
+
Anton Minin (1):
|
|
5
|
+
Fix notice crash on empty cgi_data
|
|
6
|
+
|
|
7
|
+
Cedric Brancourt (2):
|
|
8
|
+
fixes #231 When no session in controller , airbrake_session_data returns {:session => "no session found"}
|
|
9
|
+
fixes airbrake/airbrake#233 duplicate cgi_data in Notice params
|
|
10
|
+
|
|
11
|
+
Chris Gunther (2):
|
|
12
|
+
Coerce user attributes to strings before checking that they are valid.
|
|
13
|
+
Reject invalid user attributes on assignment
|
|
14
|
+
|
|
15
|
+
Hongli Lai (Phusion) (1):
|
|
16
|
+
Add support for SSL in the command line tool.
|
|
17
|
+
|
|
18
|
+
Hrvoje Šimić (22):
|
|
19
|
+
better explanation of ignored environments and classes
|
|
20
|
+
add test for warnings about user attributes
|
|
21
|
+
remove unnecessary active record requirements
|
|
22
|
+
remove platform checks from nil logger initialization
|
|
23
|
+
update bourne dependency to fix test-running issues with ruby 2.0.0
|
|
24
|
+
test against ruby 2.0.0 on a CI server
|
|
25
|
+
remove mocha deprecation warnings
|
|
26
|
+
be more careful when reading sinatra environment name
|
|
27
|
+
wrap the js configuration in try-catch
|
|
28
|
+
ignore Gemfile.lock
|
|
29
|
+
lock json-schema to 1.0.12
|
|
30
|
+
add a scenario for ignoring rake exceptions [#223]
|
|
31
|
+
get rid of activesupport once and for all
|
|
32
|
+
fully support Rails 4.0
|
|
33
|
+
stop using appraisals for unit tests
|
|
34
|
+
fix formatting of airbrake_session_data
|
|
35
|
+
fix test for no session controller [#232]
|
|
36
|
+
include actionpack and activesupport in gemspec for tests
|
|
37
|
+
cleaning up tests
|
|
38
|
+
cleaning the codebase from warnings issued in ruby verbose mode
|
|
39
|
+
remove private writers and use instance variables to remove warnings
|
|
40
|
+
fixing changeling's version sorting
|
|
41
|
+
|
|
42
|
+
Jason Petersen (1):
|
|
43
|
+
Escape user name in Airbrake notify command
|
|
44
|
+
|
|
45
|
+
Konstantin Zub (1):
|
|
46
|
+
return environment_info unless environment_name
|
|
47
|
+
|
|
48
|
+
Kris Kemper (1):
|
|
49
|
+
Allow backtrace to be a String
|
|
50
|
+
|
|
51
|
+
Nathan Broadbent (1):
|
|
52
|
+
Use a separate (blank) array of ignored exceptions for Rake tasks
|
|
53
|
+
|
|
54
|
+
Subhash Chandra (1):
|
|
55
|
+
split javascript notifier into loader and configuration
|
|
56
|
+
|
|
57
|
+
Tony Spore (1):
|
|
58
|
+
use 'bundle exec' in capistrano task
|
|
59
|
+
|
|
60
|
+
|
|
1
61
|
Version 3.1.12 - 2013-04-29 18:48:40 +0200
|
|
2
62
|
===============================================================================
|
|
3
63
|
|
|
@@ -1165,3 +1225,4 @@ Nick Quaranto (3):
|
|
|
1165
1225
|
|
|
1166
1226
|
|
|
1167
1227
|
|
|
1228
|
+
|
data/README.md
CHANGED
|
@@ -27,19 +27,8 @@ Then from your project's RAILS_ROOT, and in your development environment, run:
|
|
|
27
27
|
bundle install
|
|
28
28
|
rails generate airbrake --api-key your_key_here
|
|
29
29
|
|
|
30
|
-
That's it!
|
|
31
|
-
|
|
32
30
|
The generator creates a file under `config/initializers/airbrake.rb` configuring Airbrake with your API key. This file should be checked into your version control system so that it is deployed to your staging and production environments.
|
|
33
31
|
|
|
34
|
-
The default behaviour of the gem is to only operate in Rails environments that are NOT **development**, **test** & **cucumber**.
|
|
35
|
-
|
|
36
|
-
You can change this by altering this array:
|
|
37
|
-
|
|
38
|
-
config.development_environments = ["development", "test", "cucumber", "custom"]
|
|
39
|
-
|
|
40
|
-
Set it to empty array and it will report errors on all environments.
|
|
41
|
-
|
|
42
|
-
|
|
43
32
|
### Rails 2.x
|
|
44
33
|
|
|
45
34
|
Add the airbrake gem to your app. In config/environment.rb:
|
|
@@ -61,6 +50,34 @@ every server you deploy to has the gem installed or your application won't start
|
|
|
61
50
|
|
|
62
51
|
The generator creates a file under `config/initializers/airbrake.rb` configuring Airbrake with your API key. This file should be checked into your version control system so that it is deployed to your staging and production environments.
|
|
63
52
|
|
|
53
|
+
Ignored exceptions
|
|
54
|
+
------------------------
|
|
55
|
+
|
|
56
|
+
Exceptions raised from Rails environments named **development**, **test** or **cucumber** will be ignored by default.
|
|
57
|
+
|
|
58
|
+
You can clear the list of ignored environments with this setting:
|
|
59
|
+
|
|
60
|
+
config.development_environments = []
|
|
61
|
+
|
|
62
|
+
List of ignored exception classes includes:
|
|
63
|
+
|
|
64
|
+
ActiveRecord::RecordNotFound
|
|
65
|
+
ActionController::RoutingError
|
|
66
|
+
ActionController::InvalidAuthenticityToken
|
|
67
|
+
CGI::Session::CookieStore::TamperedWithCookie
|
|
68
|
+
ActionController::UnknownHttpMethod
|
|
69
|
+
ActionController::UnknownAction
|
|
70
|
+
AbstractController::ActionNotFound
|
|
71
|
+
Mongoid::Errors::DocumentNotFound
|
|
72
|
+
|
|
73
|
+
You can alter this list with
|
|
74
|
+
|
|
75
|
+
config.ignore_only = []
|
|
76
|
+
|
|
77
|
+
which will cause none of the exception classes to be ignored.
|
|
78
|
+
|
|
79
|
+
Check the [wiki](https://github.com/airbrake/airbrake/wiki/Customizing-your-airbrake.rb) for more customization options.
|
|
80
|
+
|
|
64
81
|
Supported frameworks
|
|
65
82
|
------------------------
|
|
66
83
|
|
|
@@ -76,18 +93,20 @@ https://github.com/airbrake/airbrake/wiki
|
|
|
76
93
|
Development
|
|
77
94
|
-----------
|
|
78
95
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
To run the test suite on your machine, you need to run the following commands:
|
|
96
|
+
For running unit tests, you should run
|
|
82
97
|
|
|
83
98
|
bundle
|
|
84
|
-
bundle exec rake
|
|
99
|
+
bundle exec rake test
|
|
85
100
|
|
|
86
|
-
|
|
101
|
+
If you wish to run the entire suite, which checks the different framework
|
|
102
|
+
integrations with cucumber, you should run the following commands
|
|
87
103
|
|
|
104
|
+
bundle
|
|
105
|
+
bundle exec rake appraisal:install
|
|
88
106
|
bundle exec rake
|
|
89
107
|
|
|
90
|
-
|
|
108
|
+
We use [Appraisals](https://github.com/thoughtbot/appraisal) to run the integration
|
|
109
|
+
tests.
|
|
91
110
|
|
|
92
111
|
Maintainers
|
|
93
112
|
-----------
|
data/Rakefile
CHANGED
|
@@ -13,17 +13,24 @@ end
|
|
|
13
13
|
require './lib/airbrake/version'
|
|
14
14
|
|
|
15
15
|
task :default do
|
|
16
|
-
exec 'rake
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
exec 'rake test'\
|
|
17
|
+
'&& rake appraisal:rails-3.2 integration_test'\
|
|
18
|
+
'&& rake appraisal:rails-3.1 integration_test'\
|
|
19
|
+
'&& rake appraisal:rails-3.0 integration_test'\
|
|
20
|
+
'&& rake appraisal cucumber'
|
|
21
21
|
end
|
|
22
22
|
|
|
23
23
|
desc 'Test the airbrake gem.'
|
|
24
24
|
Rake::TestTask.new(:test) do |t|
|
|
25
25
|
t.libs << 'lib'
|
|
26
|
-
t.pattern = 'test
|
|
26
|
+
t.pattern = 'test/*_test.rb'
|
|
27
|
+
t.verbose = true
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
desc "Test the integration of airbrake gem with Rails."
|
|
31
|
+
Rake::TestTask.new(:integration_test) do |t|
|
|
32
|
+
t.libs << 'lib'
|
|
33
|
+
t.pattern = 'test/integration.rb'
|
|
27
34
|
t.verbose = true
|
|
28
35
|
end
|
|
29
36
|
|
|
@@ -75,7 +82,7 @@ EOF
|
|
|
75
82
|
Version #{version} - #{Time.now}
|
|
76
83
|
===============================================================================
|
|
77
84
|
|
|
78
|
-
#{`git log $(git tag | grep -v rc | tail -1)..HEAD | git shortlog`}
|
|
85
|
+
#{`git log $(git tag | grep -v rc | sort --version-sort | tail -1)..HEAD | git shortlog`}
|
|
79
86
|
#{old}
|
|
80
87
|
EOF
|
|
81
88
|
end
|
|
@@ -144,4 +151,3 @@ Cucumber::Rake::Task.new(:cucumber) do |t|
|
|
|
144
151
|
t.fork = true
|
|
145
152
|
t.cucumber_opts = cucumber_opts
|
|
146
153
|
end
|
|
147
|
-
|
data/TESTED_AGAINST
CHANGED
data/airbrake.gemspec
CHANGED
|
@@ -14,23 +14,23 @@ Gem::Specification.new do |s|
|
|
|
14
14
|
s.test_files = Dir.glob("{test,spec,features}/**/*")
|
|
15
15
|
|
|
16
16
|
s.add_runtime_dependency("builder")
|
|
17
|
-
s.add_runtime_dependency("activesupport")
|
|
18
17
|
s.add_runtime_dependency("json")
|
|
19
18
|
|
|
20
|
-
s.add_development_dependency("bourne", "
|
|
19
|
+
s.add_development_dependency("bourne", "~> 1.4.0")
|
|
21
20
|
s.add_development_dependency("cucumber-rails","~> 1.1.1")
|
|
22
21
|
s.add_development_dependency("fakeweb", "~> 1.3.0")
|
|
23
22
|
s.add_development_dependency("nokogiri", "~> 1.5.0")
|
|
24
23
|
s.add_development_dependency("rspec", "~> 2.6.0")
|
|
25
24
|
s.add_development_dependency("sham_rack", "~> 1.3.0")
|
|
25
|
+
s.add_development_dependency("json-schema", "~> 1.0.12")
|
|
26
26
|
s.add_development_dependency("capistrano")
|
|
27
27
|
s.add_development_dependency("aruba")
|
|
28
28
|
s.add_development_dependency("appraisal")
|
|
29
29
|
s.add_development_dependency("rspec-rails")
|
|
30
30
|
s.add_development_dependency("girl_friday")
|
|
31
|
-
s.add_development_dependency("json-schema")
|
|
32
31
|
s.add_development_dependency("shoulda-matchers")
|
|
33
32
|
s.add_development_dependency("shoulda-context")
|
|
33
|
+
s.add_development_dependency("pry")
|
|
34
34
|
|
|
35
35
|
s.authors = ["Airbrake"]
|
|
36
36
|
s.email = %q{support@airbrake.io}
|
data/features/metal.feature
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Feature: Rescue errors in Rails middleware
|
|
2
2
|
Background:
|
|
3
|
-
Given I successfully run `rails new rails_root -O --
|
|
3
|
+
Given I successfully run `rails new rails_root -O --skip-gemfile`
|
|
4
4
|
And I cd to "rails_root"
|
|
5
5
|
And I configure the notifier to use the following configuration lines:
|
|
6
6
|
"""
|
data/features/rails.feature
CHANGED
|
@@ -251,6 +251,7 @@ Feature: Install the Gem in a Rails application
|
|
|
251
251
|
"""
|
|
252
252
|
And I run `rails runner config/boot.rb`
|
|
253
253
|
Then I should see "Unsupported user attribute: 'shoe_size'"
|
|
254
|
+
And I should not see "Unsupported user attribute: 'id'"
|
|
254
255
|
|
|
255
256
|
Scenario: It should log the notice when failure happens
|
|
256
257
|
When Airbrake server is not responding
|
data/features/rake.feature
CHANGED
|
@@ -3,6 +3,10 @@ Feature: Use the Gem to catch errors in a Rake application
|
|
|
3
3
|
Background:
|
|
4
4
|
Given I've prepared the Rakefile
|
|
5
5
|
|
|
6
|
+
Scenario: Ignoring exceptions
|
|
7
|
+
When I run rake with airbrake ignored
|
|
8
|
+
Then Airbrake should not catch the exception
|
|
9
|
+
|
|
6
10
|
Scenario: Catching exceptions in Rake
|
|
7
11
|
When I run rake with airbrake
|
|
8
12
|
Then Airbrake should catch the exception
|
data/features/sinatra.feature
CHANGED
|
@@ -25,7 +25,7 @@ Feature: Use the notifier in a Sinatra app
|
|
|
25
25
|
"""
|
|
26
26
|
When I perform a Rack request to "http://example.com:123/test/index?param=value"
|
|
27
27
|
Then I should receive a Airbrake notification
|
|
28
|
-
|
|
28
|
+
|
|
29
29
|
Scenario: Catching environment name in modular Sinatra app
|
|
30
30
|
Given the following Rack app:
|
|
31
31
|
"""
|
|
@@ -53,3 +53,74 @@ Feature: Use the notifier in a Sinatra app
|
|
|
53
53
|
When I perform a Rack request to "http://example.com:123/test/index?param=value"
|
|
54
54
|
Then I should receive a Airbrake notification
|
|
55
55
|
And the output should contain "Env: production"
|
|
56
|
+
|
|
57
|
+
Scenario: Warnings when environment name wasn't determined automatically
|
|
58
|
+
Given the following Rack app:
|
|
59
|
+
"""
|
|
60
|
+
require 'sinatra/base'
|
|
61
|
+
require 'airbrake'
|
|
62
|
+
require 'logger'
|
|
63
|
+
|
|
64
|
+
Airbrake.configure do |config|
|
|
65
|
+
config.api_key = 'my_api_key'
|
|
66
|
+
config.logger = Logger.new STDOUT
|
|
67
|
+
config.development_environments = []
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
class DummyMiddleware
|
|
71
|
+
def initialize(app)
|
|
72
|
+
@app = app
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def call(env)
|
|
76
|
+
@app.call(env)
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
class FontaneApp < Sinatra::Base
|
|
81
|
+
|
|
82
|
+
use Airbrake::Sinatra
|
|
83
|
+
|
|
84
|
+
use DummyMiddleware
|
|
85
|
+
|
|
86
|
+
set :environment, :production
|
|
87
|
+
|
|
88
|
+
get "/test/index" do
|
|
89
|
+
raise "Sinatra has left the building"
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
app = FontaneApp
|
|
94
|
+
"""
|
|
95
|
+
When I perform a Rack request to "http://example.com:123/test/index?param=value"
|
|
96
|
+
Then I should receive a Airbrake notification
|
|
97
|
+
And the output should contain "Please set your environment name manually"
|
|
98
|
+
|
|
99
|
+
Scenario: Give precendence to environment name that was first set
|
|
100
|
+
Given the following Rack app:
|
|
101
|
+
"""
|
|
102
|
+
require 'sinatra/base'
|
|
103
|
+
require 'airbrake'
|
|
104
|
+
require 'logger'
|
|
105
|
+
|
|
106
|
+
Airbrake.configure do |config|
|
|
107
|
+
config.api_key = 'my_api_key'
|
|
108
|
+
config.logger = Logger.new STDOUT
|
|
109
|
+
config.environment_name = "staging"
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
class FontaneApp < Sinatra::Base
|
|
113
|
+
use Airbrake::Sinatra
|
|
114
|
+
|
|
115
|
+
set :environment, :production
|
|
116
|
+
|
|
117
|
+
get "/test/index" do
|
|
118
|
+
raise "Sinatra has left the building"
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
app = FontaneApp
|
|
123
|
+
"""
|
|
124
|
+
When I perform a Rack request to "http://example.com:123/test/index?param=value"
|
|
125
|
+
Then I should receive a Airbrake notification
|
|
126
|
+
And the output should contain "Env: staging"
|
|
@@ -5,7 +5,10 @@ require 'rubygems'
|
|
|
5
5
|
require 'airbrake'
|
|
6
6
|
require 'airbrake/rake_handler'
|
|
7
7
|
|
|
8
|
+
class IgnoredException < StandardError; end
|
|
9
|
+
|
|
8
10
|
Airbrake.configure do |c|
|
|
11
|
+
c.ignore_rake_only = ["IgnoredException"]
|
|
9
12
|
end
|
|
10
13
|
|
|
11
14
|
# Should catch exception
|
|
@@ -22,6 +25,13 @@ task :airbrake_disabled do
|
|
|
22
25
|
raise_exception
|
|
23
26
|
end
|
|
24
27
|
|
|
28
|
+
# Should ignore the exception
|
|
29
|
+
task :airbrake_ignored do
|
|
30
|
+
Airbrake.configuration.rescue_rake_exceptions = true
|
|
31
|
+
stub_tty_output(true)
|
|
32
|
+
raise_exception(IgnoredException)
|
|
33
|
+
end
|
|
34
|
+
|
|
25
35
|
# Should not catch exception as tty_output is true
|
|
26
36
|
task :airbrake_autodetect_from_terminal do
|
|
27
37
|
Airbrake.configuration.rescue_rake_exceptions = nil
|
|
@@ -44,8 +54,8 @@ task :airbrake_not_yet_configured do
|
|
|
44
54
|
end
|
|
45
55
|
|
|
46
56
|
module Airbrake
|
|
47
|
-
def self.
|
|
48
|
-
$stderr.puts "[airbrake] #{
|
|
57
|
+
def self.send_notice(notice)
|
|
58
|
+
$stderr.puts "[airbrake] #{notice.component}"
|
|
49
59
|
end
|
|
50
60
|
end
|
|
51
61
|
|
|
@@ -62,6 +72,6 @@ def stub_tty_output(value)
|
|
|
62
72
|
end
|
|
63
73
|
end
|
|
64
74
|
|
|
65
|
-
def raise_exception
|
|
66
|
-
raise 'TEST'
|
|
75
|
+
def raise_exception(exception_class = StandardError)
|
|
76
|
+
raise exception_class.new('TEST')
|
|
67
77
|
end
|
|
@@ -49,14 +49,14 @@ class AirbrakeGenerator < Rails::Generator::Base
|
|
|
49
49
|
def determine_api_key
|
|
50
50
|
puts "Attempting to determine your API Key from Heroku..."
|
|
51
51
|
ENV['HOPTOAD_API_KEY'] = heroku_api_key
|
|
52
|
-
if ENV['HOPTOAD_API_KEY']
|
|
52
|
+
if ENV['HOPTOAD_API_KEY'] =~ /\S/
|
|
53
|
+
puts "... Done."
|
|
54
|
+
puts "Heroku's Airbrake API Key is '#{ENV['HOPTOAD_API_KEY']}'"
|
|
55
|
+
else
|
|
53
56
|
puts "... Failed."
|
|
54
57
|
puts "WARNING: We were unable to detect the Airbrake API Key from your Heroku environment."
|
|
55
58
|
puts "Your Heroku application environment may not be configured correctly."
|
|
56
59
|
exit 1
|
|
57
|
-
else
|
|
58
|
-
puts "... Done."
|
|
59
|
-
puts "Heroku's Airbrake API Key is '#{ENV['HOPTOAD_API_KEY']}'"
|
|
60
60
|
end
|
|
61
61
|
end
|
|
62
62
|
|
|
@@ -66,7 +66,7 @@ class AirbrakeGenerator < Rails::Generator::Base
|
|
|
66
66
|
end
|
|
67
67
|
|
|
68
68
|
def heroku_api_key
|
|
69
|
-
heroku_var("(hoptoad|airbrake)_api_key",options[:app]).split.find {|x| x
|
|
69
|
+
heroku_var("(hoptoad|airbrake)_api_key",options[:app]).split.find {|x| x =~ /\S/ }
|
|
70
70
|
end
|
|
71
71
|
|
|
72
72
|
def heroku?
|
data/lib/airbrake.rb
CHANGED
|
@@ -8,14 +8,6 @@ require 'net/https'
|
|
|
8
8
|
require 'rubygems'
|
|
9
9
|
require 'logger'
|
|
10
10
|
|
|
11
|
-
begin
|
|
12
|
-
require 'active_support/core_ext/object/blank'
|
|
13
|
-
rescue
|
|
14
|
-
require 'activesupport'
|
|
15
|
-
require 'activesupport/core_ext'
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
|
|
19
11
|
require 'airbrake/version'
|
|
20
12
|
require 'airbrake/configuration'
|
|
21
13
|
require 'airbrake/notice'
|
|
@@ -66,6 +58,7 @@ module Airbrake
|
|
|
66
58
|
info = "[Ruby: #{RUBY_VERSION}]"
|
|
67
59
|
info << " [#{configuration.framework}]" if configuration.framework
|
|
68
60
|
info << " [Env: #{configuration.environment_name}]" if configuration.environment_name
|
|
61
|
+
info
|
|
69
62
|
end
|
|
70
63
|
|
|
71
64
|
# Writes out the given message to the #logger
|
|
@@ -76,7 +69,7 @@ module Airbrake
|
|
|
76
69
|
# Look for the Rails logger currently defined
|
|
77
70
|
def logger
|
|
78
71
|
self.configuration.logger ||
|
|
79
|
-
Logger.new(
|
|
72
|
+
Logger.new(nil)
|
|
80
73
|
end
|
|
81
74
|
|
|
82
75
|
# Call this method to modify defaults in your initializers.
|