lapsoss 0.2.0 → 0.3.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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +153 -733
  3. data/lib/lapsoss/adapters/appsignal_adapter.rb +22 -22
  4. data/lib/lapsoss/adapters/base.rb +0 -3
  5. data/lib/lapsoss/adapters/insight_hub_adapter.rb +108 -104
  6. data/lib/lapsoss/adapters/logger_adapter.rb +1 -1
  7. data/lib/lapsoss/adapters/rollbar_adapter.rb +108 -68
  8. data/lib/lapsoss/adapters/sentry_adapter.rb +24 -24
  9. data/lib/lapsoss/backtrace_frame.rb +37 -206
  10. data/lib/lapsoss/backtrace_frame_factory.rb +228 -0
  11. data/lib/lapsoss/backtrace_processor.rb +26 -23
  12. data/lib/lapsoss/client.rb +2 -4
  13. data/lib/lapsoss/configuration.rb +28 -32
  14. data/lib/lapsoss/current.rb +10 -2
  15. data/lib/lapsoss/event.rb +28 -5
  16. data/lib/lapsoss/exception_backtrace_frame.rb +39 -0
  17. data/lib/lapsoss/exclusion_configuration.rb +30 -0
  18. data/lib/lapsoss/exclusion_filter.rb +0 -273
  19. data/lib/lapsoss/exclusion_presets.rb +249 -0
  20. data/lib/lapsoss/fingerprinter.rb +28 -28
  21. data/lib/lapsoss/http_client.rb +8 -8
  22. data/lib/lapsoss/merged_scope.rb +63 -0
  23. data/lib/lapsoss/middleware/base.rb +15 -0
  24. data/lib/lapsoss/middleware/conditional_filter.rb +18 -0
  25. data/lib/lapsoss/middleware/event_enricher.rb +19 -0
  26. data/lib/lapsoss/middleware/event_transformer.rb +19 -0
  27. data/lib/lapsoss/middleware/exception_filter.rb +43 -0
  28. data/lib/lapsoss/middleware/metrics_collector.rb +44 -0
  29. data/lib/lapsoss/middleware/rate_limiter.rb +31 -0
  30. data/lib/lapsoss/middleware/release_tracker.rb +117 -0
  31. data/lib/lapsoss/middleware/sample_filter.rb +23 -0
  32. data/lib/lapsoss/middleware/sampling_middleware.rb +18 -0
  33. data/lib/lapsoss/middleware/user_context_enhancer.rb +46 -0
  34. data/lib/lapsoss/middleware.rb +0 -339
  35. data/lib/lapsoss/pipeline.rb +0 -68
  36. data/lib/lapsoss/pipeline_builder.rb +69 -0
  37. data/lib/lapsoss/rails_error_subscriber.rb +42 -0
  38. data/lib/lapsoss/rails_middleware.rb +78 -0
  39. data/lib/lapsoss/railtie.rb +22 -50
  40. data/lib/lapsoss/registry.rb +18 -5
  41. data/lib/lapsoss/release_providers.rb +110 -0
  42. data/lib/lapsoss/release_tracker.rb +159 -232
  43. data/lib/lapsoss/sampling/adaptive_sampler.rb +46 -0
  44. data/lib/lapsoss/sampling/base.rb +11 -0
  45. data/lib/lapsoss/sampling/composite_sampler.rb +26 -0
  46. data/lib/lapsoss/sampling/consistent_hash_sampler.rb +30 -0
  47. data/lib/lapsoss/sampling/exception_type_sampler.rb +44 -0
  48. data/lib/lapsoss/sampling/health_based_sampler.rb +19 -0
  49. data/lib/lapsoss/sampling/rate_limiter.rb +32 -0
  50. data/lib/lapsoss/sampling/sampling_factory.rb +69 -0
  51. data/lib/lapsoss/sampling/time_based_sampler.rb +44 -0
  52. data/lib/lapsoss/sampling/uniform_sampler.rb +15 -0
  53. data/lib/lapsoss/sampling/user_based_sampler.rb +42 -0
  54. data/lib/lapsoss/sampling.rb +0 -322
  55. data/lib/lapsoss/scope.rb +12 -48
  56. data/lib/lapsoss/scrubber.rb +7 -7
  57. data/lib/lapsoss/user_context.rb +30 -203
  58. data/lib/lapsoss/user_context_integrations.rb +39 -0
  59. data/lib/lapsoss/user_context_middleware.rb +50 -0
  60. data/lib/lapsoss/user_context_provider.rb +93 -0
  61. data/lib/lapsoss/utils.rb +13 -0
  62. data/lib/lapsoss/validators.rb +15 -15
  63. data/lib/lapsoss/version.rb +1 -1
  64. data/lib/lapsoss.rb +3 -3
  65. metadata +54 -5
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lapsoss
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Abdelkader Boudih
@@ -27,16 +27,16 @@ dependencies:
27
27
  name: concurrent-ruby
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
- - - "~>"
30
+ - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: '1.0'
32
+ version: 1.3.1
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - "~>"
37
+ - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '1.0'
39
+ version: 1.3.1
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: faraday
42
42
  requirement: !ruby/object:Gem::Requirement
@@ -141,6 +141,20 @@ dependencies:
141
141
  - - "~>"
142
142
  - !ruby/object:Gem::Version
143
143
  version: '1.0'
144
+ - !ruby/object:Gem::Dependency
145
+ name: rubocop-rails-omakase
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '1.0'
151
+ type: :development
152
+ prerelease: false
153
+ version_requirements: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '1.0'
144
158
  - !ruby/object:Gem::Dependency
145
159
  name: steep
146
160
  requirement: !ruby/object:Gem::Requirement
@@ -204,24 +218,59 @@ files:
204
218
  - lib/lapsoss/adapters/rollbar_adapter.rb
205
219
  - lib/lapsoss/adapters/sentry_adapter.rb
206
220
  - lib/lapsoss/backtrace_frame.rb
221
+ - lib/lapsoss/backtrace_frame_factory.rb
207
222
  - lib/lapsoss/backtrace_processor.rb
208
223
  - lib/lapsoss/client.rb
209
224
  - lib/lapsoss/configuration.rb
210
225
  - lib/lapsoss/current.rb
211
226
  - lib/lapsoss/event.rb
227
+ - lib/lapsoss/exception_backtrace_frame.rb
228
+ - lib/lapsoss/exclusion_configuration.rb
212
229
  - lib/lapsoss/exclusion_filter.rb
230
+ - lib/lapsoss/exclusion_presets.rb
213
231
  - lib/lapsoss/fingerprinter.rb
214
232
  - lib/lapsoss/http_client.rb
233
+ - lib/lapsoss/merged_scope.rb
215
234
  - lib/lapsoss/middleware.rb
235
+ - lib/lapsoss/middleware/base.rb
236
+ - lib/lapsoss/middleware/conditional_filter.rb
237
+ - lib/lapsoss/middleware/event_enricher.rb
238
+ - lib/lapsoss/middleware/event_transformer.rb
239
+ - lib/lapsoss/middleware/exception_filter.rb
240
+ - lib/lapsoss/middleware/metrics_collector.rb
241
+ - lib/lapsoss/middleware/rate_limiter.rb
242
+ - lib/lapsoss/middleware/release_tracker.rb
243
+ - lib/lapsoss/middleware/sample_filter.rb
244
+ - lib/lapsoss/middleware/sampling_middleware.rb
245
+ - lib/lapsoss/middleware/user_context_enhancer.rb
216
246
  - lib/lapsoss/pipeline.rb
247
+ - lib/lapsoss/pipeline_builder.rb
248
+ - lib/lapsoss/rails_error_subscriber.rb
249
+ - lib/lapsoss/rails_middleware.rb
217
250
  - lib/lapsoss/railtie.rb
218
251
  - lib/lapsoss/registry.rb
252
+ - lib/lapsoss/release_providers.rb
219
253
  - lib/lapsoss/release_tracker.rb
220
254
  - lib/lapsoss/router.rb
221
255
  - lib/lapsoss/sampling.rb
256
+ - lib/lapsoss/sampling/adaptive_sampler.rb
257
+ - lib/lapsoss/sampling/base.rb
258
+ - lib/lapsoss/sampling/composite_sampler.rb
259
+ - lib/lapsoss/sampling/consistent_hash_sampler.rb
260
+ - lib/lapsoss/sampling/exception_type_sampler.rb
261
+ - lib/lapsoss/sampling/health_based_sampler.rb
262
+ - lib/lapsoss/sampling/rate_limiter.rb
263
+ - lib/lapsoss/sampling/sampling_factory.rb
264
+ - lib/lapsoss/sampling/time_based_sampler.rb
265
+ - lib/lapsoss/sampling/uniform_sampler.rb
266
+ - lib/lapsoss/sampling/user_based_sampler.rb
222
267
  - lib/lapsoss/scope.rb
223
268
  - lib/lapsoss/scrubber.rb
224
269
  - lib/lapsoss/user_context.rb
270
+ - lib/lapsoss/user_context_integrations.rb
271
+ - lib/lapsoss/user_context_middleware.rb
272
+ - lib/lapsoss/user_context_provider.rb
273
+ - lib/lapsoss/utils.rb
225
274
  - lib/lapsoss/validators.rb
226
275
  - lib/lapsoss/version.rb
227
276
  homepage: https://github.com/seuros/lapsoss