memolog 0.3.0 → 0.3.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e99e3c68b6d46dff6769d0526a9b9638d6ddf479665929a8e03dddb5eeddf618
4
- data.tar.gz: f7221b929323ff44066403d01a3f02eefb6dd8302c882a2a78df43776acdc03b
3
+ metadata.gz: a4c3d9289bf4c0378b3050613589595dbf2c1d1e5a25a0fa9f0c3d2302a2963e
4
+ data.tar.gz: 0b56db61731b0e1bd1c293216cf0a0fab009ea8eb70be2b85601a27b70cdf284
5
5
  SHA512:
6
- metadata.gz: 35f308119cb2c44d09974ce1f9fda973e648212aefb36d6256678d0b281de6784be265bc87781b55f3aa05d5a3d6ddfdd60beb86e77420f629fab02e72e87be7
7
- data.tar.gz: 3a82f19378b63f47ffcd9ad512ee44a2daa4769ffdaed6b01cd90e867e3cea31c200d264820f91af8307f0e43bb3a2c03944aa0d107bd2beeb6e6464a46cb8c7
6
+ metadata.gz: 6a25437819058d1330f195a7dbbeea54d728face25790bc83c6fcba84500e18b459a8d50730c79e598b86c4c7a0f953d5ab804c2d71bb38c3d2f898a08097761
7
+ data.tar.gz: 0b90e159e40b2a0e4a7fb0c0aa84e96a8de0fb3b4538346e5614f894f001574c7c0157963273d50081aa36fc732085f46bd97afa9991d42085235e393a3d5e93
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- memolog (0.3.0)
4
+ memolog (0.3.1)
5
5
  logger (~> 1.4.3)
6
6
  securerandom (~> 0.1.0)
7
7
 
data/lib/memolog/init.rb CHANGED
@@ -14,22 +14,24 @@ class Memolog::Init
14
14
  return unless Object.const_defined?("Rails")
15
15
  return if Object.const_defined?("Sidekiq") && Sidekiq.server?
16
16
 
17
- Rails.application.middleware.insert_before(0, Memolog::Middleware)
17
+ Rails.application.middleware.insert_before(0, Memolog::RailsMiddleware)
18
18
  end
19
19
 
20
20
  def init_sentry!
21
21
  return unless Memolog.config.initializers.include?(:sentry)
22
- return unless Object.const_defined?("Sentry::Scope")
22
+ return unless Object.const_defined?("Sentry")
23
23
 
24
- Sentry::Scope.prepend(Memolog::SentryScopeExtension)
24
+ Sentry.prepend(Memolog::SentryExtension)
25
25
  end
26
26
 
27
27
  def init_sidekiq!
28
28
  return unless Memolog.config.initializers.include?(:sidekiq)
29
- return unless Object.const_defined?("Sentry::Sidekiq::SentryContextServerMiddleware")
29
+ return unless Object.const_defined?("Sidekiq")
30
30
 
31
- Sentry::Sidekiq::SentryContextServerMiddleware.prepend(
32
- Memolog::SentrySidekiqMiddlewareExtension,
33
- )
31
+ Sidekiq.configure_server do |config|
32
+ config.server_middleware do |chain|
33
+ chain.prepend(Memolog::SidekiqMiddleware)
34
+ end
35
+ end
34
36
  end
35
37
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class Memolog::Middleware
3
+ class Memolog::RailsMiddleware
4
4
  def initialize(app)
5
5
  @app = app
6
6
  end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Memolog::SentryExtension
4
+ def self.prepended(base)
5
+ base.singleton_class.send(:prepend, ClassMethods)
6
+ end
7
+
8
+ module ClassMethods
9
+ def capture_exception(exception, **options, &block)
10
+ add_memolog_to_current_scope!
11
+ super
12
+ end
13
+
14
+ def capture_message(message, **options, &block)
15
+ add_memolog_to_current_scope!
16
+ super
17
+ end
18
+
19
+ def add_memolog_to_current_scope!
20
+ dump = Memolog.dump
21
+ return unless dump
22
+
23
+ scope = get_current_scope
24
+ scope.set_extras(Memolog.config.sentry_key => dump) if scope # rubocop:disable Style/SafeNavigation
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class Memolog::SidekiqMiddleware
4
+ def call(*)
5
+ Memolog.run { yield } # rubocop:disable Style/ExplicitBlockArgument
6
+ end
7
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Memolog
4
- VERSION = "0.3.0"
4
+ VERSION = "0.3.1"
5
5
  end
data/lib/memolog.rb CHANGED
@@ -9,9 +9,9 @@ require "memolog/config"
9
9
  require "memolog/extension"
10
10
  require "memolog/formatter"
11
11
  require "memolog/init"
12
- require "memolog/middleware"
13
- require "memolog/sentry_scope_extension"
14
- require "memolog/sentry_sidekiq_middleware_extension"
12
+ require "memolog/rails_middleware"
13
+ require "memolog/sentry_extension"
14
+ require "memolog/sidekiq_middleware"
15
15
 
16
16
  module Memolog
17
17
  extend self
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: memolog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stepan Kirushkin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-21 00:00:00.000000000 Z
11
+ date: 2021-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: logger
@@ -64,9 +64,9 @@ files:
64
64
  - lib/memolog/extension.rb
65
65
  - lib/memolog/formatter.rb
66
66
  - lib/memolog/init.rb
67
- - lib/memolog/middleware.rb
68
- - lib/memolog/sentry_scope_extension.rb
69
- - lib/memolog/sentry_sidekiq_middleware_extension.rb
67
+ - lib/memolog/rails_middleware.rb
68
+ - lib/memolog/sentry_extension.rb
69
+ - lib/memolog/sidekiq_middleware.rb
70
70
  - lib/memolog/version.rb
71
71
  homepage: https://github.com/skirushkin/memolog
72
72
  licenses:
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Memolog::SentryScopeExtension
4
- def apply_to_event(scope, hint = nil)
5
- memolog_dump = Memolog.dump
6
- set_extras(Memolog.config.sentry_key => memolog_dump) if memolog_dump
7
-
8
- super
9
- end
10
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Memolog::SentrySidekiqMiddlewareExtension
4
- def call(worker, job, queue)
5
- Memolog.run { super }
6
- end
7
- end