l2meter 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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