sentry-rails 4.0.0 → 4.1.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/lib/sentry/rails/breadcrumb/active_support_logger.rb +4 -1
- data/lib/sentry/rails/{capture_exception.rb → capture_exceptions.rb} +1 -1
- data/lib/sentry/rails/railtie.rb +40 -25
- data/lib/sentry/rails/version.rb +1 -1
- data/sentry-rails.gemspec +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9e5e6de4bbd5e0e1530fcd38e5978b153c846bac123e92db1941fd8c58318eef
|
4
|
+
data.tar.gz: 3b0ea04fd34eab29d19052fde261954890e3ce59e8f090592e23653e1aab7a4f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 785b7d05b9ff2a18e5e3939aeac265ae02426a617f9fda15865fc69d1d196706fcc658a4a54731dd3eb918f714e6825651002528c2f20ad0b426e5fa0b248d24
|
7
|
+
data.tar.gz: f9065c5331efae105803df2fcaed4e7c7cf18286d2b07ae046e1e48004cde67c0c3e171a5ca82cfae2cada9f23bb4a9ee12442fc3391415e2634389799ead5af
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 4.1.0
|
4
|
+
|
5
|
+
- Merge & rename 2 Rack middlewares [#1147](https://github.com/getsentry/sentry-ruby/pull/1147)
|
6
|
+
- Fixes [#1153](https://github.com/getsentry/sentry-ruby/pull/1153)
|
7
|
+
- Removed `Sentry::Rack::Tracing` middleware and renamed `Sentry::Rack::CaptureException` to `Sentry::Rack::CaptureExceptions`
|
8
|
+
- Tidy up rails integration [#1150](https://github.com/getsentry/sentry-ruby/pull/1150)
|
9
|
+
- Check SDK initialization before running integrations [#1151](https://github.com/getsentry/sentry-ruby/pull/1151)
|
10
|
+
- Fixes [#1145](https://github.com/getsentry/sentry-ruby/pull/1145)
|
11
|
+
|
3
12
|
## 4.0.0
|
4
13
|
|
5
14
|
- Only documents update for the official release and no API/feature changes.
|
@@ -14,7 +14,10 @@ module Sentry
|
|
14
14
|
|
15
15
|
def inject
|
16
16
|
@subscriber = ::ActiveSupport::Notifications.subscribe(/.*/) do |name, started, finished, unique_id, data|
|
17
|
-
|
17
|
+
# we only record events that has a started timestamp
|
18
|
+
if started.is_a?(Time)
|
19
|
+
add(name, started, finished, unique_id, data)
|
20
|
+
end
|
18
21
|
end
|
19
22
|
end
|
20
23
|
|
data/lib/sentry/rails/railtie.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
require "rails"
|
2
|
-
require "sentry/rails/
|
2
|
+
require "sentry/rails/capture_exceptions"
|
3
3
|
require "sentry/rails/backtrace_cleaner"
|
4
4
|
require "sentry/rails/controller_methods"
|
5
5
|
require "sentry/rails/controller_transaction"
|
@@ -8,12 +8,33 @@ require "sentry/rails/overrides/streaming_reporter"
|
|
8
8
|
|
9
9
|
module Sentry
|
10
10
|
class Railtie < ::Rails::Railtie
|
11
|
+
# middlewares can't be injected after initialize
|
11
12
|
initializer "sentry.use_rack_middleware" do |app|
|
12
|
-
app.config.middleware.insert 0, Sentry::Rails::
|
13
|
-
app.config.middleware.insert 0, Sentry::Rack::Tracing
|
13
|
+
app.config.middleware.insert 0, Sentry::Rails::CaptureExceptions
|
14
14
|
end
|
15
15
|
|
16
|
-
|
16
|
+
config.after_initialize do
|
17
|
+
next unless Sentry.initialized?
|
18
|
+
|
19
|
+
configure_sentry_logger
|
20
|
+
extend_controller_methods
|
21
|
+
extend_active_job
|
22
|
+
override_exceptions_handling
|
23
|
+
override_streaming_reporter
|
24
|
+
setup_backtrace_cleanup_callback
|
25
|
+
inject_breadcrumbs_logger
|
26
|
+
activate_tracing
|
27
|
+
end
|
28
|
+
|
29
|
+
def configure_sentry_logger
|
30
|
+
Sentry.configuration.logger = ::Rails.logger
|
31
|
+
end
|
32
|
+
|
33
|
+
def extend_active_job
|
34
|
+
ActiveJob::Base.send(:prepend, Sentry::Rails::ActiveJobExtensions)
|
35
|
+
end
|
36
|
+
|
37
|
+
def extend_controller_methods
|
17
38
|
ActiveSupport.on_load :action_controller do
|
18
39
|
include Sentry::Rails::ControllerMethods
|
19
40
|
include Sentry::Rails::ControllerTransaction
|
@@ -21,26 +42,22 @@ module Sentry
|
|
21
42
|
end
|
22
43
|
end
|
23
44
|
|
24
|
-
|
25
|
-
|
26
|
-
|
45
|
+
def inject_breadcrumbs_logger
|
46
|
+
if Sentry.configuration.breadcrumbs_logger.include?(:active_support_logger)
|
47
|
+
require 'sentry/rails/breadcrumb/active_support_logger'
|
48
|
+
Sentry::Rails::Breadcrumb::ActiveSupportLogger.inject
|
27
49
|
end
|
28
50
|
end
|
29
51
|
|
30
|
-
|
31
|
-
Sentry.configuration.logger = ::Rails.logger
|
32
|
-
|
52
|
+
def setup_backtrace_cleanup_callback
|
33
53
|
backtrace_cleaner = Sentry::Rails::BacktraceCleaner.new
|
34
54
|
|
35
55
|
Sentry.configuration.backtrace_cleanup_callback = lambda do |backtrace|
|
36
56
|
backtrace_cleaner.clean(backtrace)
|
37
57
|
end
|
58
|
+
end
|
38
59
|
|
39
|
-
|
40
|
-
require 'sentry/rails/breadcrumb/active_support_logger'
|
41
|
-
Sentry::Rails::Breadcrumb::ActiveSupportLogger.inject
|
42
|
-
end
|
43
|
-
|
60
|
+
def override_exceptions_handling
|
44
61
|
if Sentry.configuration.rails.report_rescued_exceptions
|
45
62
|
require 'sentry/rails/overrides/debug_exceptions_catcher'
|
46
63
|
if defined?(::ActionDispatch::DebugExceptions)
|
@@ -51,21 +68,19 @@ module Sentry
|
|
51
68
|
|
52
69
|
exceptions_class.send(:prepend, Sentry::Rails::Overrides::DebugExceptionsCatcher)
|
53
70
|
end
|
71
|
+
end
|
54
72
|
|
55
|
-
|
56
|
-
|
57
|
-
Sentry::Rails::
|
73
|
+
def override_streaming_reporter
|
74
|
+
ActiveSupport.on_load :action_view do
|
75
|
+
ActionView::StreamingTemplateRenderer::Body.send(:prepend, Sentry::Rails::Overrides::StreamingReporter)
|
58
76
|
end
|
59
77
|
end
|
60
78
|
|
61
|
-
|
62
|
-
|
63
|
-
|
79
|
+
def activate_tracing
|
80
|
+
if Sentry.configuration.tracing_enabled?
|
81
|
+
Sentry::Rails::Tracing.subscribe_tracing_events
|
82
|
+
Sentry::Rails::Tracing.patch_active_support_notifications
|
64
83
|
end
|
65
84
|
end
|
66
|
-
|
67
|
-
# rake_tasks do
|
68
|
-
# require 'sentry/integrations/tasks'
|
69
|
-
# end
|
70
85
|
end
|
71
86
|
end
|
data/lib/sentry/rails/version.rb
CHANGED
data/sentry-rails.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sentry-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sentry Team
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-12-
|
11
|
+
date: 2020-12-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 4.
|
33
|
+
version: 4.1.0
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 4.
|
40
|
+
version: 4.1.0
|
41
41
|
description: A gem that provides Rails integration for the Sentry error logger
|
42
42
|
email: accounts@sentry.io
|
43
43
|
executables: []
|
@@ -63,7 +63,7 @@ files:
|
|
63
63
|
- lib/sentry/rails/active_job.rb
|
64
64
|
- lib/sentry/rails/backtrace_cleaner.rb
|
65
65
|
- lib/sentry/rails/breadcrumb/active_support_logger.rb
|
66
|
-
- lib/sentry/rails/
|
66
|
+
- lib/sentry/rails/capture_exceptions.rb
|
67
67
|
- lib/sentry/rails/configuration.rb
|
68
68
|
- lib/sentry/rails/controller_methods.rb
|
69
69
|
- lib/sentry/rails/controller_transaction.rb
|