l2meter 0.1.1 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +5 -7
- data/lib/l2meter/null_object.rb +3 -1
- data/lib/l2meter/thread_safe.rb +17 -9
- data/lib/l2meter/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0868502cf903eb7f449e62707f784efb2f994b58
|
4
|
+
data.tar.gz: 8baf6a348d967c4b61ef8220ae0a1f8a56ec9cd9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9adac799a0be2ed07cbf0440e85bba82275e7ecb714488bfd673f28bebc8f516371a6473aa9ea28e611a5187ca0bc922b748beec15f655ba1876af3e889994ed
|
7
|
+
data.tar.gz: e5eafd660c8d9edb3d4f5c34c653ef0a28d9ad96b77d0b9cec243bd401d681a6cda18ad61406f453df7ace2d035a1d5d351347323ead781a24964f8fdd44c3b3
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# L2meter
|
2
2
|
[![Gem Version](https://img.shields.io/gem/v/l2meter.svg)](https://rubygems.org/gems/l2meter)
|
3
|
-
[![Build Status](https://img.shields.io/travis/
|
4
|
-
[![Code Climate](https://img.shields.io/codeclimate/github/
|
3
|
+
[![Build Status](https://img.shields.io/travis/rwz/l2meter.svg)](http://travis-ci.org/rwz/l2meter)
|
4
|
+
[![Code Climate](https://img.shields.io/codeclimate/github/rwz/l2meter.svg)](https://codeclimate.com/github/rwz/l2meter)
|
5
5
|
|
6
6
|
L2meter is a little gem that helps you build loggers that outputs things in
|
7
7
|
l2met-friendly format.
|
@@ -208,12 +208,10 @@ end
|
|
208
208
|
```
|
209
209
|
|
210
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
|
212
|
-
use `
|
211
|
+
still produce ouput if you fire up a new thread. To silence it completely,
|
212
|
+
use `disable!` method, like so:
|
213
213
|
|
214
214
|
```ruby
|
215
215
|
# spec/spec_helper.rb
|
216
|
-
Metrics.
|
216
|
+
Metrics.disable!
|
217
217
|
```
|
218
|
-
|
219
|
-
You can unfo the effect of `silence!` by calling `unsilence!`.
|
data/lib/l2meter/null_object.rb
CHANGED
data/lib/l2meter/thread_safe.rb
CHANGED
@@ -6,7 +6,7 @@ module L2meter
|
|
6
6
|
class ThreadSafe
|
7
7
|
extend Forwardable
|
8
8
|
|
9
|
-
|
9
|
+
EMITTER_METHODS = %i[
|
10
10
|
configuration
|
11
11
|
context
|
12
12
|
count
|
@@ -14,32 +14,40 @@ module L2meter
|
|
14
14
|
measure
|
15
15
|
sample
|
16
16
|
silence
|
17
|
-
unique
|
18
|
-
with_elapsed
|
19
|
-
]
|
20
|
-
|
21
|
-
PROXY_DIRECT_METHODS = %i[
|
22
17
|
silence!
|
18
|
+
unique
|
23
19
|
unsilence!
|
20
|
+
with_elapsed
|
24
21
|
]
|
25
22
|
|
26
|
-
private_constant :
|
23
|
+
private_constant :EMITTER_METHODS
|
27
24
|
|
28
25
|
def initialize(emitter)
|
29
26
|
@emitter = emitter.freeze
|
30
27
|
end
|
31
28
|
|
32
|
-
def_delegators :
|
33
|
-
|
29
|
+
def_delegators :receiver, *EMITTER_METHODS
|
30
|
+
|
31
|
+
def disable!
|
32
|
+
@disabled = true
|
33
|
+
end
|
34
34
|
|
35
35
|
private
|
36
36
|
|
37
37
|
attr_reader :emitter
|
38
38
|
|
39
|
+
def receiver
|
40
|
+
@disabled ? null_emitter : current_emitter
|
41
|
+
end
|
42
|
+
|
39
43
|
def current_emitter
|
40
44
|
Thread.current[thread_key] ||= emitter.clone
|
41
45
|
end
|
42
46
|
|
47
|
+
def null_emitter
|
48
|
+
@null_emitter ||= NullObject.new
|
49
|
+
end
|
50
|
+
|
43
51
|
def thread_key
|
44
52
|
@thread_key ||= "_l2meter_emitter_#{emitter.object_id}".freeze
|
45
53
|
end
|
data/lib/l2meter/version.rb
CHANGED
metadata
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: l2meter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pavel Pravosud
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-10-
|
11
|
+
date: 2015-10-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|
15
|
-
- pavel@
|
15
|
+
- pavel@pravosud.com
|
16
16
|
executables: []
|
17
17
|
extensions: []
|
18
18
|
extra_rdoc_files: []
|
@@ -25,7 +25,7 @@ files:
|
|
25
25
|
- lib/l2meter/null_object.rb
|
26
26
|
- lib/l2meter/thread_safe.rb
|
27
27
|
- lib/l2meter/version.rb
|
28
|
-
homepage: https://github.com/
|
28
|
+
homepage: https://github.com/rwz/l2meter
|
29
29
|
licenses:
|
30
30
|
- MIT
|
31
31
|
metadata: {}
|