l2meter 0.1.0 → 0.1.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
  SHA1:
3
- metadata.gz: f503003e9477cf9593c912bbe56e0ec5732e5888
4
- data.tar.gz: 5c0f2b7eeb06f8600b8a9204a397f46457dfea51
3
+ metadata.gz: 15213d02129fd57eaac81b808c9e568538827e16
4
+ data.tar.gz: 110cf2c6e0bb6a123a07dbf4886caac80de50205
5
5
  SHA512:
6
- metadata.gz: 70852339270abfbf8abcf19a5b287e92cb7244e496e5aad7a1bb64598feb9e12e4dc0e7bd888887eb3bf84ec7c1661f82ecf31602c472a4484f529259e87e8a1
7
- data.tar.gz: cd3cb10da8ccb5c15a6576d81812689dc4c7d6a04781613caa9f2f647b13033f595e48b0639a1ff08dac37162d5e6b2d24c2acf5a7487a16ef9e12b618819fdf
6
+ metadata.gz: cd4581d8f1e118e6ed77f29c2d8a56f1004568a61d4da047d95cc4c86ea3387c32d0dd5cc14978668b619e900cc386f581fb3f62b512f37b83eba74e4b016cf0
7
+ data.tar.gz: d87922d849a2d98f63557722c815798e119c890cd96b617bce93a2be02ae71cea8ccf75533010b0a89dd8182a0c61117eb3d4fca79cb320b05d9a43e4b01a5f4
data/README.md CHANGED
@@ -206,3 +206,14 @@ RSpec.configure do |config|
206
206
  end
207
207
  end
208
208
  ```
209
+
210
+ Note that this code will only silence logger in the current thread. It'll
211
+ still produce ouput if you fire up a new thread. To silcene it completely,
212
+ use `silence!` method, like so:
213
+
214
+ ```ruby
215
+ # spec/spec_helper.rb
216
+ Metrics.silence!
217
+ ```
218
+
219
+ You can unfo the effect of `silence!` by calling `unsilence!`.
@@ -28,9 +28,17 @@ module L2meter
28
28
  end
29
29
 
30
30
  def silence
31
- @outputs.push NullObject.new
31
+ silence!
32
32
  yield
33
33
  ensure
34
+ unsilence!
35
+ end
36
+
37
+ def silence!
38
+ @outputs.push NullObject.new
39
+ end
40
+
41
+ def unsilence!
34
42
  @outputs.pop
35
43
  end
36
44
 
@@ -6,7 +6,7 @@ module L2meter
6
6
  class ThreadSafe
7
7
  extend Forwardable
8
8
 
9
- EMITTER_METHODS = %i[
9
+ PROXY_CLONE_METHODS = %i[
10
10
  configuration
11
11
  context
12
12
  count
@@ -18,13 +18,19 @@ module L2meter
18
18
  with_elapsed
19
19
  ]
20
20
 
21
- private_constant :EMITTER_METHODS
21
+ PROXY_DIRECT_METHODS = %i[
22
+ silence!
23
+ unsilence!
24
+ ]
25
+
26
+ private_constant :PROXY_CLONE_METHODS, :PROXY_DIRECT_METHODS
22
27
 
23
28
  def initialize(emitter)
24
29
  @emitter = emitter.freeze
25
30
  end
26
31
 
27
- def_delegators :current_emitter, *EMITTER_METHODS
32
+ def_delegators :current_emitter, *PROXY_CLONE_METHODS
33
+ def_delegators :emitter, *PROXY_DIRECT_METHODS
28
34
 
29
35
  private
30
36
 
@@ -1,3 +1,3 @@
1
1
  module L2meter
2
- VERSION = "0.1.0".freeze
2
+ VERSION = "0.1.1".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: l2meter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Pravosud