sentry-ruby 6.7.0 → 7.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/gemfiles/ruby-2.7_rack-2_redis-4.gemfile.lock +9 -9
- data/gemfiles/ruby-2.7_rack-3.1_redis-4.gemfile.lock +9 -9
- data/gemfiles/ruby-2.7_rack-3_redis-4.gemfile.lock +9 -9
- data/gemfiles/ruby-3.0_rack-2_redis-4.gemfile.lock +12 -12
- data/gemfiles/ruby-3.0_rack-3.1_redis-4.gemfile.lock +12 -12
- data/gemfiles/ruby-3.0_rack-3_redis-4.gemfile.lock +12 -12
- data/gemfiles/ruby-3.1_rack-2_redis-4.gemfile.lock +24 -24
- data/gemfiles/ruby-3.1_rack-3.1_redis-4.gemfile.lock +24 -24
- data/gemfiles/ruby-3.1_rack-3_redis-4.gemfile.lock +24 -24
- data/gemfiles/ruby-3.2_rack-0_redis-5.gemfile.lock +24 -24
- data/gemfiles/ruby-3.2_rack-2_redis-4.gemfile.lock +26 -26
- data/gemfiles/ruby-3.2_rack-2_redis-5.gemfile.lock +26 -26
- data/gemfiles/ruby-3.2_rack-3.1_redis-4.gemfile.lock +26 -26
- data/gemfiles/ruby-3.2_rack-3_redis-4.gemfile.lock +26 -26
- data/gemfiles/ruby-3.2_rack-3_redis-5.gemfile.lock +26 -26
- data/gemfiles/ruby-3.3_rack-2_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-3.3_rack-3.1_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-3.3_rack-3.1_redis-5.3.gemfile.lock +30 -30
- data/gemfiles/ruby-3.3_rack-3_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-3.4_rack-2_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-3.4_rack-3.1_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-3.4_rack-3.1_redis-5.3.gemfile.lock +30 -30
- data/gemfiles/ruby-3.4_rack-3_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-4.0_rack-2_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-4.0_rack-3.1_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-4.0_rack-3_redis-4.gemfile.lock +30 -30
- data/gemfiles/ruby-jruby-9.4.14.0_rack-2_redis-4.gemfile.lock +24 -24
- data/gemfiles/ruby-jruby-9.4.14.0_rack-3.1_redis-4.gemfile.lock +24 -24
- data/gemfiles/ruby-jruby-9.4.14.0_rack-3_redis-4.gemfile.lock +24 -24
- data/lib/sentry/backtrace.rb +10 -1
- data/lib/sentry/client.rb +21 -12
- data/lib/sentry/configuration.rb +35 -13
- data/lib/sentry/data_collection/key_value_collection.rb +136 -0
- data/lib/sentry/data_collection.rb +203 -0
- data/lib/sentry/debug_structured_logger.rb +2 -15
- data/lib/sentry/error_event.rb +6 -1
- data/lib/sentry/event.rb +8 -4
- data/lib/sentry/excon/middleware.rb +3 -8
- data/lib/sentry/faraday.rb +7 -5
- data/lib/sentry/hub.rb +11 -4
- data/lib/sentry/integrable.rb +12 -0
- data/lib/sentry/interfaces/exception.rb +8 -2
- data/lib/sentry/interfaces/request.rb +42 -46
- data/lib/sentry/interfaces/single_exception.rb +2 -2
- data/lib/sentry/log_event_buffer.rb +1 -1
- data/lib/sentry/metric_event.rb +4 -2
- data/lib/sentry/metric_event_buffer.rb +1 -1
- data/lib/sentry/metrics.rb +12 -6
- data/lib/sentry/net/http.rb +3 -4
- data/lib/sentry/redis.rb +1 -1
- data/lib/sentry/scope.rb +7 -3
- data/lib/sentry/session_flusher.rb +7 -0
- data/lib/sentry/std_lib_logger.rb +10 -8
- data/lib/sentry/telemetry_event_buffer.rb +57 -31
- data/lib/sentry/test_helper.rb +6 -4
- data/lib/sentry/threaded_periodic_worker.rb +90 -13
- data/lib/sentry/transaction.rb +7 -1
- data/lib/sentry/utils/callback_helper.rb +27 -0
- data/lib/sentry/utils/http_tracing.rb +42 -26
- data/lib/sentry/version.rb +1 -1
- data/lib/sentry-ruby.rb +7 -18
- metadata +9 -6
|
@@ -6,7 +6,7 @@ GIT
|
|
|
6
6
|
PATH
|
|
7
7
|
remote: ..
|
|
8
8
|
specs:
|
|
9
|
-
sentry-ruby (
|
|
9
|
+
sentry-ruby (7.0.0)
|
|
10
10
|
bigdecimal
|
|
11
11
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
12
12
|
logger
|
|
@@ -48,7 +48,7 @@ GEM
|
|
|
48
48
|
benchmark-memory (0.1.2)
|
|
49
49
|
memory_profiler (~> 0.9)
|
|
50
50
|
benchmark_driver (0.16.5)
|
|
51
|
-
bigdecimal (4.1.
|
|
51
|
+
bigdecimal (4.1.3-java)
|
|
52
52
|
cgi (0.5.2-java)
|
|
53
53
|
concurrent-ruby (1.3.8)
|
|
54
54
|
connection_pool (2.5.5)
|
|
@@ -63,30 +63,30 @@ GEM
|
|
|
63
63
|
cgi (>= 0.3.3)
|
|
64
64
|
excon (1.6.0)
|
|
65
65
|
logger
|
|
66
|
-
faraday (2.14.
|
|
66
|
+
faraday (2.14.4)
|
|
67
67
|
faraday-net_http (>= 2.0, < 3.5)
|
|
68
68
|
json
|
|
69
69
|
logger
|
|
70
70
|
faraday-net_http (3.4.4)
|
|
71
71
|
net-http (~> 0.5)
|
|
72
72
|
fiber-storage (1.0.1)
|
|
73
|
-
graphql (2.6.
|
|
73
|
+
graphql (2.6.10)
|
|
74
74
|
base64
|
|
75
75
|
fiber-storage
|
|
76
76
|
logger
|
|
77
77
|
hashdiff (1.2.1)
|
|
78
78
|
i18n (1.15.2)
|
|
79
79
|
concurrent-ruby (~> 1.0)
|
|
80
|
-
io-console (0.
|
|
80
|
+
io-console (0.9.4-java)
|
|
81
81
|
irb (1.18.0)
|
|
82
82
|
pp (>= 0.6.0)
|
|
83
83
|
prism (>= 1.3.0)
|
|
84
84
|
rdoc (>= 4.0.0)
|
|
85
85
|
reline (>= 0.4.2)
|
|
86
|
-
jar-dependencies (0.
|
|
86
|
+
jar-dependencies (0.6.1-java)
|
|
87
87
|
jdbc-mysql (8.4.0.1)
|
|
88
88
|
jdbc-sqlite3 (3.46.1.1)
|
|
89
|
-
json (
|
|
89
|
+
json (3.0.2-java)
|
|
90
90
|
logger (1.7.0)
|
|
91
91
|
memory_profiler (0.9.14)
|
|
92
92
|
minitest (5.27.0)
|
|
@@ -97,20 +97,20 @@ GEM
|
|
|
97
97
|
prettyprint
|
|
98
98
|
prettyprint (0.2.0)
|
|
99
99
|
prism (1.9.0)
|
|
100
|
-
psych (5.
|
|
100
|
+
psych (5.5.0-java)
|
|
101
101
|
date
|
|
102
102
|
jar-dependencies (>= 0.1.7)
|
|
103
103
|
public_suffix (6.0.2)
|
|
104
104
|
puma (8.0.2-java)
|
|
105
105
|
nio4r (~> 2.0)
|
|
106
|
-
rack (3.2.
|
|
106
|
+
rack (3.2.7)
|
|
107
107
|
rake (12.3.3)
|
|
108
108
|
rdoc (7.2.0)
|
|
109
109
|
erb
|
|
110
110
|
psych (>= 4.0.0)
|
|
111
111
|
tsort
|
|
112
112
|
redis (4.8.1)
|
|
113
|
-
reline (0.
|
|
113
|
+
reline (0.7.0)
|
|
114
114
|
io-console (~> 0.5)
|
|
115
115
|
rexml (3.4.1)
|
|
116
116
|
rspec (3.13.2)
|
|
@@ -129,7 +129,7 @@ GEM
|
|
|
129
129
|
rspec-core (> 3.3)
|
|
130
130
|
rspec-support (3.13.7)
|
|
131
131
|
securerandom (0.4.1)
|
|
132
|
-
sequel (5.
|
|
132
|
+
sequel (5.108.0)
|
|
133
133
|
bigdecimal
|
|
134
134
|
simplecov (0.22.0)
|
|
135
135
|
docile (~> 1.1)
|
|
@@ -146,7 +146,7 @@ GEM
|
|
|
146
146
|
tzinfo (2.0.6)
|
|
147
147
|
concurrent-ruby (~> 1.0)
|
|
148
148
|
uri (1.1.1)
|
|
149
|
-
webmock (3.26.
|
|
149
|
+
webmock (3.26.4)
|
|
150
150
|
addressable (>= 2.8.0)
|
|
151
151
|
crack (>= 0.3.2)
|
|
152
152
|
hashdiff (>= 0.4.0, < 2.0.0)
|
|
@@ -200,7 +200,7 @@ CHECKSUMS
|
|
|
200
200
|
benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230
|
|
201
201
|
benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87
|
|
202
202
|
benchmark_driver (0.16.5) sha256=f675df0fe1de7e18e40df313ae24ebe4c7ee7814a4165f29a1a37b863a685831
|
|
203
|
-
bigdecimal (4.1.
|
|
203
|
+
bigdecimal (4.1.3-java) sha256=9a6a1fa67723a27ab1b3a6d5526322d8c82170af03199da7c915b8d9a1770532
|
|
204
204
|
cgi (0.5.2-java) sha256=08bbfe06e10e771d36f10db6c1dfb81727ea2a25c3dbcd28d890a1794414a73d
|
|
205
205
|
concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1
|
|
206
206
|
connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad
|
|
@@ -211,18 +211,18 @@ CHECKSUMS
|
|
|
211
211
|
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
212
212
|
erb (4.0.4.1-java) sha256=3e4805edebd25f48cdb43ad4ebf1d61c11538f29373f0a48716b688819e3f7ce
|
|
213
213
|
excon (1.6.0) sha256=ebe2ab83c055ef8e117c62c91a3535b966a59a64868188219d49ab90cd83b65f
|
|
214
|
-
faraday (2.14.
|
|
214
|
+
faraday (2.14.4) sha256=9bb4408c44621b0dbaaaa39e5dbfc4dbe58cc6751b6eb94d16ae9e1f2f2fab6e
|
|
215
215
|
faraday-net_http (3.4.4) sha256=0e78af151747ed1b00f33e25973b4bc220d7f16c00c39676817c8b12331eb588
|
|
216
216
|
fiber-storage (1.0.1) sha256=f48e5b6d8b0be96dac486332b55cee82240057065dc761c1ea692b2e719240e1
|
|
217
|
-
graphql (2.6.
|
|
217
|
+
graphql (2.6.10) sha256=9b7c8633767f516ff9d48a8d6305b2a00a2101c82aa871b92e69086944f9f83e
|
|
218
218
|
hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1
|
|
219
219
|
i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
|
|
220
|
-
io-console (0.
|
|
220
|
+
io-console (0.9.4-java) sha256=789188c38b937fc2d04400e35fd3b2838ffdf061e846571e51524036bc1bc185
|
|
221
221
|
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
|
|
222
|
-
jar-dependencies (0.
|
|
222
|
+
jar-dependencies (0.6.1-java) sha256=2746643482d139fd9cecb524b57df63b71d9b5d734c7275171701201e3164f23
|
|
223
223
|
jdbc-mysql (8.4.0.1) sha256=429cb7999d11c4f46a7153a382b6ac07935a4c10ddc52dd98e2d52b22c17fa13
|
|
224
224
|
jdbc-sqlite3 (3.46.1.1) sha256=2498fea7d37c0d51c6bad1b95ffc909173c014ba6bd36825f37910113d0230cf
|
|
225
|
-
json (
|
|
225
|
+
json (3.0.2-java) sha256=2afafb9c82faabfb60ed2f37707973fdcb766dba2c99f0b9ed85f073d1d4c3d0
|
|
226
226
|
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
227
227
|
memory_profiler (0.9.14) sha256=de558cf6525d8d56d2c0ea465b1664517fbe45560f892dc7a898d3b8c2863b12
|
|
228
228
|
minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5
|
|
@@ -231,14 +231,14 @@ CHECKSUMS
|
|
|
231
231
|
pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570
|
|
232
232
|
prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
|
|
233
233
|
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
|
|
234
|
-
psych (5.
|
|
234
|
+
psych (5.5.0-java) sha256=3b7cf3684c44d049c3dee87ec4118ec9cd6ac714cbdcfba386997f96dbbd36ab
|
|
235
235
|
public_suffix (6.0.2) sha256=bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394
|
|
236
236
|
puma (8.0.2-java) sha256=37392e0dbd01e2a157748b92b818bfacf801bb32628e41680e9ab1171dea2b3d
|
|
237
|
-
rack (3.2.
|
|
237
|
+
rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7
|
|
238
238
|
rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3
|
|
239
239
|
rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192
|
|
240
240
|
redis (4.8.1) sha256=387ee086694fffc9632aaeb1efe4a7b1627ca783bf373320346a8a20cd93333a
|
|
241
|
-
reline (0.
|
|
241
|
+
reline (0.7.0) sha256=5b012d8e55dbf9d450f12bde2cf7d15ff546ae80b3f8f3b30e570d431815583d
|
|
242
242
|
rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca
|
|
243
243
|
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
|
|
244
244
|
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
|
|
@@ -247,8 +247,8 @@ CHECKSUMS
|
|
|
247
247
|
rspec-retry (0.6.2) sha256=6101ba23a38809811ae3484acde4ab481c54d846ac66d5037ccb40131a60d858
|
|
248
248
|
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
|
|
249
249
|
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
|
|
250
|
-
sentry-ruby (
|
|
251
|
-
sequel (5.
|
|
250
|
+
sentry-ruby (7.0.0)
|
|
251
|
+
sequel (5.108.0) sha256=ae5996d1196775427916a2fa36e02f99762ead9affb8ea9b1aec2c0b16bdb3a3
|
|
252
252
|
simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5
|
|
253
253
|
simplecov-cobertura (3.2.0) sha256=70d702658677fcb20e5aceb6915ccf8bc62ff2ccd38b62b3ad5c9db5c0888740
|
|
254
254
|
simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246
|
|
@@ -258,7 +258,7 @@ CHECKSUMS
|
|
|
258
258
|
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
|
|
259
259
|
tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
|
|
260
260
|
uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
|
|
261
|
-
webmock (3.26.
|
|
261
|
+
webmock (3.26.4) sha256=8d8da206d217ebe6968cfb09c77f4533c23074e1432bad865f3994eacbaad50d
|
|
262
262
|
webrick (1.9.2) sha256=beb4a15fc474defed24a3bda4ffd88a490d517c9e4e6118c3edce59e45864131
|
|
263
263
|
yard (0.9.45) sha256=52e211493f7cb8a3ebf7e104a25a1e73937a3103092545d34cb88fafebb3dc51
|
|
264
264
|
|
|
@@ -6,7 +6,7 @@ GIT
|
|
|
6
6
|
PATH
|
|
7
7
|
remote: ..
|
|
8
8
|
specs:
|
|
9
|
-
sentry-ruby (
|
|
9
|
+
sentry-ruby (7.0.0)
|
|
10
10
|
bigdecimal
|
|
11
11
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
12
12
|
logger
|
|
@@ -48,7 +48,7 @@ GEM
|
|
|
48
48
|
benchmark-memory (0.1.2)
|
|
49
49
|
memory_profiler (~> 0.9)
|
|
50
50
|
benchmark_driver (0.16.5)
|
|
51
|
-
bigdecimal (4.1.
|
|
51
|
+
bigdecimal (4.1.3-java)
|
|
52
52
|
cgi (0.5.2-java)
|
|
53
53
|
concurrent-ruby (1.3.8)
|
|
54
54
|
connection_pool (2.5.5)
|
|
@@ -63,30 +63,30 @@ GEM
|
|
|
63
63
|
cgi (>= 0.3.3)
|
|
64
64
|
excon (1.6.0)
|
|
65
65
|
logger
|
|
66
|
-
faraday (2.14.
|
|
66
|
+
faraday (2.14.4)
|
|
67
67
|
faraday-net_http (>= 2.0, < 3.5)
|
|
68
68
|
json
|
|
69
69
|
logger
|
|
70
70
|
faraday-net_http (3.4.4)
|
|
71
71
|
net-http (~> 0.5)
|
|
72
72
|
fiber-storage (1.0.1)
|
|
73
|
-
graphql (2.6.
|
|
73
|
+
graphql (2.6.10)
|
|
74
74
|
base64
|
|
75
75
|
fiber-storage
|
|
76
76
|
logger
|
|
77
77
|
hashdiff (1.2.1)
|
|
78
78
|
i18n (1.15.2)
|
|
79
79
|
concurrent-ruby (~> 1.0)
|
|
80
|
-
io-console (0.
|
|
80
|
+
io-console (0.9.4-java)
|
|
81
81
|
irb (1.18.0)
|
|
82
82
|
pp (>= 0.6.0)
|
|
83
83
|
prism (>= 1.3.0)
|
|
84
84
|
rdoc (>= 4.0.0)
|
|
85
85
|
reline (>= 0.4.2)
|
|
86
|
-
jar-dependencies (0.
|
|
86
|
+
jar-dependencies (0.6.1-java)
|
|
87
87
|
jdbc-mysql (8.4.0.1)
|
|
88
88
|
jdbc-sqlite3 (3.46.1.1)
|
|
89
|
-
json (
|
|
89
|
+
json (3.0.2-java)
|
|
90
90
|
logger (1.7.0)
|
|
91
91
|
memory_profiler (0.9.14)
|
|
92
92
|
minitest (5.27.0)
|
|
@@ -97,20 +97,20 @@ GEM
|
|
|
97
97
|
prettyprint
|
|
98
98
|
prettyprint (0.2.0)
|
|
99
99
|
prism (1.9.0)
|
|
100
|
-
psych (5.
|
|
100
|
+
psych (5.5.0-java)
|
|
101
101
|
date
|
|
102
102
|
jar-dependencies (>= 0.1.7)
|
|
103
103
|
public_suffix (6.0.2)
|
|
104
104
|
puma (8.0.2-java)
|
|
105
105
|
nio4r (~> 2.0)
|
|
106
|
-
rack (3.2.
|
|
106
|
+
rack (3.2.7)
|
|
107
107
|
rake (12.3.3)
|
|
108
108
|
rdoc (7.2.0)
|
|
109
109
|
erb
|
|
110
110
|
psych (>= 4.0.0)
|
|
111
111
|
tsort
|
|
112
112
|
redis (4.8.1)
|
|
113
|
-
reline (0.
|
|
113
|
+
reline (0.7.0)
|
|
114
114
|
io-console (~> 0.5)
|
|
115
115
|
rexml (3.4.1)
|
|
116
116
|
rspec (3.13.2)
|
|
@@ -129,7 +129,7 @@ GEM
|
|
|
129
129
|
rspec-core (> 3.3)
|
|
130
130
|
rspec-support (3.13.7)
|
|
131
131
|
securerandom (0.4.1)
|
|
132
|
-
sequel (5.
|
|
132
|
+
sequel (5.108.0)
|
|
133
133
|
bigdecimal
|
|
134
134
|
simplecov (0.22.0)
|
|
135
135
|
docile (~> 1.1)
|
|
@@ -146,7 +146,7 @@ GEM
|
|
|
146
146
|
tzinfo (2.0.6)
|
|
147
147
|
concurrent-ruby (~> 1.0)
|
|
148
148
|
uri (1.1.1)
|
|
149
|
-
webmock (3.26.
|
|
149
|
+
webmock (3.26.4)
|
|
150
150
|
addressable (>= 2.8.0)
|
|
151
151
|
crack (>= 0.3.2)
|
|
152
152
|
hashdiff (>= 0.4.0, < 2.0.0)
|
|
@@ -200,7 +200,7 @@ CHECKSUMS
|
|
|
200
200
|
benchmark-ipsa (0.2.0) sha256=8be4820765d575691b2f91f6c988a8a3d90393239bf9d35ea53c8ab0fbca7230
|
|
201
201
|
benchmark-memory (0.1.2) sha256=aa7bfe6776174d0ddefe6fb39945d88fff6d76eac165690188391d9acd441c87
|
|
202
202
|
benchmark_driver (0.16.5) sha256=f675df0fe1de7e18e40df313ae24ebe4c7ee7814a4165f29a1a37b863a685831
|
|
203
|
-
bigdecimal (4.1.
|
|
203
|
+
bigdecimal (4.1.3-java) sha256=9a6a1fa67723a27ab1b3a6d5526322d8c82170af03199da7c915b8d9a1770532
|
|
204
204
|
cgi (0.5.2-java) sha256=08bbfe06e10e771d36f10db6c1dfb81727ea2a25c3dbcd28d890a1794414a73d
|
|
205
205
|
concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1
|
|
206
206
|
connection_pool (2.5.5) sha256=e54ff92855753df1fd7c59fa04a398833355f27dd14c074f8c83a05f72a716ad
|
|
@@ -211,18 +211,18 @@ CHECKSUMS
|
|
|
211
211
|
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
212
212
|
erb (4.0.4.1-java) sha256=3e4805edebd25f48cdb43ad4ebf1d61c11538f29373f0a48716b688819e3f7ce
|
|
213
213
|
excon (1.6.0) sha256=ebe2ab83c055ef8e117c62c91a3535b966a59a64868188219d49ab90cd83b65f
|
|
214
|
-
faraday (2.14.
|
|
214
|
+
faraday (2.14.4) sha256=9bb4408c44621b0dbaaaa39e5dbfc4dbe58cc6751b6eb94d16ae9e1f2f2fab6e
|
|
215
215
|
faraday-net_http (3.4.4) sha256=0e78af151747ed1b00f33e25973b4bc220d7f16c00c39676817c8b12331eb588
|
|
216
216
|
fiber-storage (1.0.1) sha256=f48e5b6d8b0be96dac486332b55cee82240057065dc761c1ea692b2e719240e1
|
|
217
|
-
graphql (2.6.
|
|
217
|
+
graphql (2.6.10) sha256=9b7c8633767f516ff9d48a8d6305b2a00a2101c82aa871b92e69086944f9f83e
|
|
218
218
|
hashdiff (1.2.1) sha256=9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1
|
|
219
219
|
i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
|
|
220
|
-
io-console (0.
|
|
220
|
+
io-console (0.9.4-java) sha256=789188c38b937fc2d04400e35fd3b2838ffdf061e846571e51524036bc1bc185
|
|
221
221
|
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
|
|
222
|
-
jar-dependencies (0.
|
|
222
|
+
jar-dependencies (0.6.1-java) sha256=2746643482d139fd9cecb524b57df63b71d9b5d734c7275171701201e3164f23
|
|
223
223
|
jdbc-mysql (8.4.0.1) sha256=429cb7999d11c4f46a7153a382b6ac07935a4c10ddc52dd98e2d52b22c17fa13
|
|
224
224
|
jdbc-sqlite3 (3.46.1.1) sha256=2498fea7d37c0d51c6bad1b95ffc909173c014ba6bd36825f37910113d0230cf
|
|
225
|
-
json (
|
|
225
|
+
json (3.0.2-java) sha256=2afafb9c82faabfb60ed2f37707973fdcb766dba2c99f0b9ed85f073d1d4c3d0
|
|
226
226
|
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
227
227
|
memory_profiler (0.9.14) sha256=de558cf6525d8d56d2c0ea465b1664517fbe45560f892dc7a898d3b8c2863b12
|
|
228
228
|
minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5
|
|
@@ -231,14 +231,14 @@ CHECKSUMS
|
|
|
231
231
|
pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570
|
|
232
232
|
prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
|
|
233
233
|
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
|
|
234
|
-
psych (5.
|
|
234
|
+
psych (5.5.0-java) sha256=3b7cf3684c44d049c3dee87ec4118ec9cd6ac714cbdcfba386997f96dbbd36ab
|
|
235
235
|
public_suffix (6.0.2) sha256=bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394
|
|
236
236
|
puma (8.0.2-java) sha256=37392e0dbd01e2a157748b92b818bfacf801bb32628e41680e9ab1171dea2b3d
|
|
237
|
-
rack (3.2.
|
|
237
|
+
rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7
|
|
238
238
|
rake (12.3.3) sha256=f7694adb4fe638da35452300cee6c545e9c377a0e3190018ac04d590b3c26ab3
|
|
239
239
|
rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192
|
|
240
240
|
redis (4.8.1) sha256=387ee086694fffc9632aaeb1efe4a7b1627ca783bf373320346a8a20cd93333a
|
|
241
|
-
reline (0.
|
|
241
|
+
reline (0.7.0) sha256=5b012d8e55dbf9d450f12bde2cf7d15ff546ae80b3f8f3b30e570d431815583d
|
|
242
242
|
rexml (3.4.1) sha256=c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca
|
|
243
243
|
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
|
|
244
244
|
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
|
|
@@ -247,8 +247,8 @@ CHECKSUMS
|
|
|
247
247
|
rspec-retry (0.6.2) sha256=6101ba23a38809811ae3484acde4ab481c54d846ac66d5037ccb40131a60d858
|
|
248
248
|
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
|
|
249
249
|
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
|
|
250
|
-
sentry-ruby (
|
|
251
|
-
sequel (5.
|
|
250
|
+
sentry-ruby (7.0.0)
|
|
251
|
+
sequel (5.108.0) sha256=ae5996d1196775427916a2fa36e02f99762ead9affb8ea9b1aec2c0b16bdb3a3
|
|
252
252
|
simplecov (0.22.0) sha256=fe2622c7834ff23b98066bb0a854284b2729a569ac659f82621fc22ef36213a5
|
|
253
253
|
simplecov-cobertura (3.2.0) sha256=70d702658677fcb20e5aceb6915ccf8bc62ff2ccd38b62b3ad5c9db5c0888740
|
|
254
254
|
simplecov-html (0.13.2) sha256=bd0b8e54e7c2d7685927e8d6286466359b6f16b18cb0df47b508e8d73c777246
|
|
@@ -258,7 +258,7 @@ CHECKSUMS
|
|
|
258
258
|
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
|
|
259
259
|
tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
|
|
260
260
|
uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
|
|
261
|
-
webmock (3.26.
|
|
261
|
+
webmock (3.26.4) sha256=8d8da206d217ebe6968cfb09c77f4533c23074e1432bad865f3994eacbaad50d
|
|
262
262
|
webrick (1.9.2) sha256=beb4a15fc474defed24a3bda4ffd88a490d517c9e4e6118c3edce59e45864131
|
|
263
263
|
yard (0.9.45) sha256=52e211493f7cb8a3ebf7e104a25a1e73937a3103092545d34cb88fafebb3dc51
|
|
264
264
|
|
data/lib/sentry/backtrace.rb
CHANGED
|
@@ -7,6 +7,8 @@ require "sentry/backtrace/line"
|
|
|
7
7
|
module Sentry
|
|
8
8
|
# @api private
|
|
9
9
|
class Backtrace
|
|
10
|
+
extend CallbackHelper
|
|
11
|
+
|
|
10
12
|
# holder for an Array of Backtrace::Line instances
|
|
11
13
|
attr_reader :lines
|
|
12
14
|
|
|
@@ -15,7 +17,14 @@ module Sentry
|
|
|
15
17
|
def self.parse(backtrace, project_root, app_dirs_pattern, in_app_pattern: nil, &backtrace_cleanup_callback)
|
|
16
18
|
ruby_lines = backtrace.is_a?(Array) ? backtrace : backtrace.split(/\n\s*/)
|
|
17
19
|
|
|
18
|
-
|
|
20
|
+
if backtrace_cleanup_callback
|
|
21
|
+
ruby_lines = safe_dispatch_callback(
|
|
22
|
+
"backtrace_cleanup_callback",
|
|
23
|
+
backtrace_cleanup_callback,
|
|
24
|
+
[ruby_lines],
|
|
25
|
+
fallback: ruby_lines
|
|
26
|
+
)
|
|
27
|
+
end
|
|
19
28
|
|
|
20
29
|
# in_app_pattern is now passed in from StacktraceBuilder, so this regex won't be triggered
|
|
21
30
|
# only here for backwards compat and will be deleted
|
data/lib/sentry/client.rb
CHANGED
|
@@ -11,6 +11,7 @@ require "sentry/utils/encoding_helper"
|
|
|
11
11
|
module Sentry
|
|
12
12
|
class Client
|
|
13
13
|
include LoggingHelper
|
|
14
|
+
include CallbackHelper
|
|
14
15
|
|
|
15
16
|
# The Transport object that'll send events for the client.
|
|
16
17
|
# @return [Transport]
|
|
@@ -48,13 +49,9 @@ module Sentry
|
|
|
48
49
|
|
|
49
50
|
@spotlight_transport = SpotlightTransport.new(configuration) if configuration.spotlight
|
|
50
51
|
|
|
51
|
-
|
|
52
|
-
@log_event_buffer = LogEventBuffer.new(configuration, self)
|
|
53
|
-
end
|
|
52
|
+
@log_event_buffer = LogEventBuffer.new(configuration, self)
|
|
54
53
|
|
|
55
|
-
|
|
56
|
-
@metric_event_buffer = MetricEventBuffer.new(configuration, self)
|
|
57
|
-
end
|
|
54
|
+
@metric_event_buffer = MetricEventBuffer.new(configuration, self)
|
|
58
55
|
end
|
|
59
56
|
|
|
60
57
|
# Applies the given scope's data to the event and sends it to Sentry.
|
|
@@ -93,7 +90,7 @@ module Sentry
|
|
|
93
90
|
transport.record_lost_event(:queue_overflow, "span", num: spans_before + 1) if is_transaction
|
|
94
91
|
end
|
|
95
92
|
else
|
|
96
|
-
send_event(event, hint)
|
|
93
|
+
event = send_event(event, hint)
|
|
97
94
|
end
|
|
98
95
|
|
|
99
96
|
event
|
|
@@ -133,8 +130,8 @@ module Sentry
|
|
|
133
130
|
def flush
|
|
134
131
|
transport.flush if configuration.sending_to_dsn_allowed?
|
|
135
132
|
spotlight_transport.flush if spotlight_transport
|
|
136
|
-
@log_event_buffer
|
|
137
|
-
@metric_event_buffer
|
|
133
|
+
@log_event_buffer.flush
|
|
134
|
+
@metric_event_buffer.flush
|
|
138
135
|
end
|
|
139
136
|
|
|
140
137
|
# Initializes an Event object with the given exception. Returns `nil` if the exception's class is excluded from reporting.
|
|
@@ -241,7 +238,11 @@ module Sentry
|
|
|
241
238
|
spans_before = event.is_a?(TransactionEvent) ? event.spans.size : 0
|
|
242
239
|
|
|
243
240
|
if event.is_a?(ErrorEvent) && configuration.before_send
|
|
244
|
-
event =
|
|
241
|
+
event = safe_dispatch_callback(
|
|
242
|
+
"before_send",
|
|
243
|
+
configuration.before_send,
|
|
244
|
+
[event, hint]
|
|
245
|
+
)
|
|
245
246
|
|
|
246
247
|
if !event.is_a?(ErrorEvent)
|
|
247
248
|
# Avoid serializing the event object in this case because we aren't sure what it is and what it contains
|
|
@@ -254,7 +255,11 @@ module Sentry
|
|
|
254
255
|
end
|
|
255
256
|
|
|
256
257
|
if event.is_a?(TransactionEvent) && configuration.before_send_transaction
|
|
257
|
-
event =
|
|
258
|
+
event = safe_dispatch_callback(
|
|
259
|
+
"before_send_transaction",
|
|
260
|
+
configuration.before_send_transaction,
|
|
261
|
+
[event, hint]
|
|
262
|
+
)
|
|
258
263
|
|
|
259
264
|
if !event.is_a?(TransactionEvent)
|
|
260
265
|
# Avoid serializing the event object in this case because we aren't sure what it is and what it contains
|
|
@@ -272,7 +277,11 @@ module Sentry
|
|
|
272
277
|
end
|
|
273
278
|
|
|
274
279
|
if event.is_a?(CheckInEvent) && configuration.before_send_check_in
|
|
275
|
-
event =
|
|
280
|
+
event = safe_dispatch_callback(
|
|
281
|
+
"before_send_check_in",
|
|
282
|
+
configuration.before_send_check_in,
|
|
283
|
+
[event, hint]
|
|
284
|
+
)
|
|
276
285
|
|
|
277
286
|
if !event.is_a?(CheckInEvent)
|
|
278
287
|
# Avoid serializing the event object in this case because we aren't sure what it is and what it contains
|
data/lib/sentry/configuration.rb
CHANGED
|
@@ -16,6 +16,7 @@ require "sentry/logger"
|
|
|
16
16
|
require "sentry/structured_logger"
|
|
17
17
|
require "sentry/log_event_buffer"
|
|
18
18
|
require "sentry/metric_event_buffer"
|
|
19
|
+
require "sentry/data_collection"
|
|
19
20
|
|
|
20
21
|
module Sentry
|
|
21
22
|
class Configuration
|
|
@@ -132,6 +133,7 @@ module Sentry
|
|
|
132
133
|
attr_accessor :max_breadcrumbs
|
|
133
134
|
|
|
134
135
|
# Number of lines of code context to capture, or nil for none
|
|
136
|
+
# @deprecated Use {#data_collection} and `frame_context_lines` instead.
|
|
135
137
|
# @return [Integer, nil]
|
|
136
138
|
attr_accessor :context_lines
|
|
137
139
|
|
|
@@ -167,8 +169,14 @@ module Sentry
|
|
|
167
169
|
alias inspect_exception_causes_for_exclusion? inspect_exception_causes_for_exclusion
|
|
168
170
|
|
|
169
171
|
# Whether to capture local variables from the raised exception's frame. Default is false.
|
|
172
|
+
# @deprecated Use {#data_collection} and `stack_frame_variables` instead.
|
|
170
173
|
# @return [Boolean]
|
|
171
|
-
|
|
174
|
+
attr_reader :include_local_variables
|
|
175
|
+
|
|
176
|
+
def include_local_variables=(value)
|
|
177
|
+
@include_local_variables = value
|
|
178
|
+
@data_collection.backfill_stack_frame_variables(self)
|
|
179
|
+
end
|
|
172
180
|
|
|
173
181
|
# Whether to capture events and traces into Spotlight. Default is false.
|
|
174
182
|
# If you set this to true, Sentry will send events and traces to the local
|
|
@@ -209,6 +217,7 @@ module Sentry
|
|
|
209
217
|
attr_accessor :propagate_traces
|
|
210
218
|
|
|
211
219
|
# Array of rack env parameters to be included in the event sent to sentry.
|
|
220
|
+
# @deprecated Use `data_collection.http_headers.request` to control request data collection instead.
|
|
212
221
|
# @return [Array<String>]
|
|
213
222
|
attr_accessor :rack_env_whitelist
|
|
214
223
|
|
|
@@ -232,8 +241,14 @@ module Sentry
|
|
|
232
241
|
# - request body
|
|
233
242
|
# - query string
|
|
234
243
|
# will not be sent to Sentry.
|
|
244
|
+
# @deprecated Use {#data_collection} instead.
|
|
235
245
|
# @return [Boolean]
|
|
236
|
-
|
|
246
|
+
attr_reader :send_default_pii
|
|
247
|
+
|
|
248
|
+
# Controls which categories of data may be collected.
|
|
249
|
+
# Replacement for send_default_pii.
|
|
250
|
+
# @return [DataCollection]
|
|
251
|
+
attr_accessor :data_collection
|
|
237
252
|
|
|
238
253
|
# Capture queue time from X-Request-Start header set by reverse proxies.
|
|
239
254
|
# Works with any Rack app behind Nginx, HAProxy, Heroku router, etc.
|
|
@@ -273,10 +288,6 @@ module Sentry
|
|
|
273
288
|
# @return [Proc]
|
|
274
289
|
attr_accessor :traces_sampler
|
|
275
290
|
|
|
276
|
-
# Enable Structured Logging
|
|
277
|
-
# @return [Boolean]
|
|
278
|
-
attr_accessor :enable_logs
|
|
279
|
-
|
|
280
291
|
# Structured logging configuration.
|
|
281
292
|
# @return [StructuredLoggingConfiguration]
|
|
282
293
|
attr_reader :structured_logging
|
|
@@ -345,10 +356,6 @@ module Sentry
|
|
|
345
356
|
# @return [Integer]
|
|
346
357
|
attr_accessor :max_log_events
|
|
347
358
|
|
|
348
|
-
# Enable metrics collection, defaults to true
|
|
349
|
-
# @return [Boolean]
|
|
350
|
-
attr_accessor :enable_metrics
|
|
351
|
-
|
|
352
359
|
# Maximum number of metric events to buffer before sending
|
|
353
360
|
# @return [Integer]
|
|
354
361
|
attr_accessor :max_metric_events
|
|
@@ -435,7 +442,7 @@ module Sentry
|
|
|
435
442
|
SERVER_PORT
|
|
436
443
|
].freeze
|
|
437
444
|
|
|
438
|
-
TRACE_IGNORE_STATUS_CODES_DEFAULT = [
|
|
445
|
+
TRACE_IGNORE_STATUS_CODES_DEFAULT = [301, (305..399), (401..404)]
|
|
439
446
|
|
|
440
447
|
HEROKU_DYNO_METADATA_MESSAGE = "You are running on Heroku but haven't enabled Dyno Metadata. For Sentry's "\
|
|
441
448
|
"release detection to work correctly, please run `heroku labs:enable runtime-dyno-metadata`"
|
|
@@ -527,6 +534,7 @@ module Sentry
|
|
|
527
534
|
def initialize
|
|
528
535
|
run_callbacks(:before, :initialize)
|
|
529
536
|
|
|
537
|
+
self.data_collection = DataCollection.new
|
|
530
538
|
self.app_dirs_pattern = APP_DIRS_PATTERN
|
|
531
539
|
self.debug = Sentry::Utils::EnvHelper.env_to_bool(ENV["SENTRY_DEBUG"])
|
|
532
540
|
self.background_worker_threads = (processor_count / 2.0).ceil
|
|
@@ -537,6 +545,7 @@ module Sentry
|
|
|
537
545
|
self.breadcrumbs_logger = []
|
|
538
546
|
self.context_lines = 3
|
|
539
547
|
self.include_local_variables = false
|
|
548
|
+
|
|
540
549
|
self.environment = environment_from_env
|
|
541
550
|
self.enabled_environments = nil
|
|
542
551
|
self.exclude_loggers = []
|
|
@@ -578,8 +587,6 @@ module Sentry
|
|
|
578
587
|
self.std_lib_logger_filter = nil
|
|
579
588
|
self.rack_env_whitelist = RACK_ENV_WHITELIST_DEFAULT
|
|
580
589
|
self.traces_sampler = nil
|
|
581
|
-
self.enable_logs = false
|
|
582
|
-
self.enable_metrics = true
|
|
583
590
|
|
|
584
591
|
self.profiler_class = Sentry::Profiler
|
|
585
592
|
self.profiles_sample_interval = DEFAULT_PROFILES_SAMPLE_INTERVAL
|
|
@@ -596,6 +603,8 @@ module Sentry
|
|
|
596
603
|
|
|
597
604
|
yield(self) if block_given?
|
|
598
605
|
|
|
606
|
+
log_deprecations
|
|
607
|
+
|
|
599
608
|
run_callbacks(:after, :configured)
|
|
600
609
|
end
|
|
601
610
|
|
|
@@ -621,6 +630,11 @@ module Sentry
|
|
|
621
630
|
@dsn = init_dsn(value)
|
|
622
631
|
end
|
|
623
632
|
|
|
633
|
+
def send_default_pii=(value)
|
|
634
|
+
@send_default_pii = value
|
|
635
|
+
self.data_collection = DataCollection.backfill(self)
|
|
636
|
+
end
|
|
637
|
+
|
|
624
638
|
alias server= dsn=
|
|
625
639
|
|
|
626
640
|
def release=(value)
|
|
@@ -804,6 +818,14 @@ module Sentry
|
|
|
804
818
|
end
|
|
805
819
|
end
|
|
806
820
|
|
|
821
|
+
# @api private
|
|
822
|
+
def log_deprecations
|
|
823
|
+
log_warn("`send_default_pii` is deprecated; use `data_collection` instead.") if self.send_default_pii
|
|
824
|
+
log_warn("`include_local_variables` is deprecated; use `data_collection.stack_frame_variables` instead.") if include_local_variables
|
|
825
|
+
log_warn("`context_lines` is deprecated; use `data_collection.frame_context_lines` instead.") if context_lines != 3
|
|
826
|
+
log_warn("`rack_env_whitelist` is deprecated; use `data_collection.http_headers.request` to control request data collection instead.") if rack_env_whitelist != RACK_ENV_WHITELIST_DEFAULT
|
|
827
|
+
end
|
|
828
|
+
|
|
807
829
|
# @api private
|
|
808
830
|
def stacktrace_builder
|
|
809
831
|
@stacktrace_builder ||= StacktraceBuilder.new(
|