tartarus 2.2 → 2.3
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +1 -1
- data/Rakefile +7 -1
- data/lib/tartarus.rb +7 -3
- data/lib/tartarus/logger.rb +9 -6
- data/spec/rails_app/Gemfile +1 -1
- data/spec/rails_app/Gemfile.lock +1 -1
- data/tartarus.gemspec +1 -1
- metadata +2 -2
data/Gemfile.lock
CHANGED
data/Rakefile
CHANGED
@@ -13,7 +13,7 @@ end
|
|
13
13
|
|
14
14
|
task :default => :spec
|
15
15
|
|
16
|
-
require '
|
16
|
+
require 'rdoc/task'
|
17
17
|
Rake::RDocTask.new do |rdoc|
|
18
18
|
if File.exist?('VERSION')
|
19
19
|
version = File.read('VERSION')
|
@@ -26,3 +26,9 @@ Rake::RDocTask.new do |rdoc|
|
|
26
26
|
rdoc.rdoc_files.include('README*')
|
27
27
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
28
28
|
end
|
29
|
+
|
30
|
+
desc 'Setup spec env for running tests'
|
31
|
+
task 'spec:setup' do
|
32
|
+
t = `cd spec/rails_app && bundle exec rake db:migrate && bundle exec rake db:test:clone`
|
33
|
+
puts "Setup spec env\n#{t}"
|
34
|
+
end
|
data/lib/tartarus.rb
CHANGED
@@ -5,8 +5,12 @@ class Tartarus
|
|
5
5
|
module Notifiers; end
|
6
6
|
|
7
7
|
class << self
|
8
|
-
def configuration
|
9
|
-
|
8
|
+
def configuration( file = nil )
|
9
|
+
if defined?(Rails)
|
10
|
+
@cached_configuration ||= YAML.load_file(file || "#{Rails.root}/config/exceptions.yml" )[Rails.env]
|
11
|
+
else
|
12
|
+
@cached_configuration ||= YAML.load_file(file)
|
13
|
+
end
|
10
14
|
end
|
11
15
|
|
12
16
|
def logger_class
|
@@ -26,5 +30,5 @@ end
|
|
26
30
|
require 'tartarus/rack'
|
27
31
|
require 'tartarus/logger'
|
28
32
|
require 'tartarus/notifiers/mail'
|
29
|
-
require 'tartarus/railtie'
|
33
|
+
require 'tartarus/railtie' if defined?(Rails)
|
30
34
|
|
data/lib/tartarus/logger.rb
CHANGED
@@ -21,16 +21,19 @@ module Tartarus::Logger
|
|
21
21
|
module ClassMethods
|
22
22
|
def log(env, exception)
|
23
23
|
logged = create do |logged_exception|
|
24
|
-
|
25
|
-
|
24
|
+
if env['action_controller.instance']
|
25
|
+
controller = env['action_controller.instance']
|
26
|
+
group_id = "#{exception.class.name}#{exception.message.gsub(/(#<.+):(.+)(>)/,'\1\3')}#{controller.controller_path}#{controller.action_name}"
|
27
|
+
end
|
26
28
|
|
27
29
|
logged_exception.exception_class = exception.class.name
|
28
|
-
logged_exception.controller_path = controller.controller_path
|
29
|
-
logged_exception.action_name = controller.action_name
|
30
30
|
logged_exception.message = exception.message
|
31
31
|
logged_exception.backtrace = exception.backtrace * "\n"
|
32
|
-
|
33
|
-
logged_exception.
|
32
|
+
|
33
|
+
logged_exception.request = self.normalize_request_data(env) if env['action_controller.instance']
|
34
|
+
logged_exception.controller_path = controller.controller_path if controller
|
35
|
+
logged_exception.action_name = controller.action_name if controller
|
36
|
+
logged_exception.group_id = Digest::SHA1.hexdigest(group_id) if group_id
|
34
37
|
end
|
35
38
|
logged.handle_notifications
|
36
39
|
logged
|
data/spec/rails_app/Gemfile
CHANGED
data/spec/rails_app/Gemfile.lock
CHANGED
data/tartarus.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tartarus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '2.
|
4
|
+
version: '2.3'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-11-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: will_paginate
|