logster 1.2.6 → 1.2.7
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 +4 -4
- data/README.md +4 -0
- data/lib/logster.rb +1 -1
- data/lib/logster/logger.rb +18 -1
- data/lib/logster/version.rb +1 -1
- data/test/logster/test_logger.rb +14 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 541dd3325db25772144891890825a001ee7d45ab
|
4
|
+
data.tar.gz: a78543266d1ee381f7b835ba6d13323227c03043
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 56d15d09ae1a17740192534cea7993e13c5893c4d6ad39dea161920855b92a31b6e386b638a6377c445fd414604f910ec60564d3d5f8cbbdc5f9b3c36df132d6
|
7
|
+
data.tar.gz: acdd9247a44d91e42c94a101c77953652ffb54cf80fd342cfab6059469861565ea0040c939eaf69306a0ec540738596b03e04a31f0f9ea7d66820b5fa7913fed
|
data/README.md
CHANGED
@@ -96,6 +96,10 @@ Logster UI is built using [Ember.js](http://emberjs.com/)
|
|
96
96
|
5. Create a new Pull Request
|
97
97
|
|
98
98
|
# CHANGELOG
|
99
|
+
|
100
|
+
- 2017-01-30: Version 1.2.7
|
101
|
+
- Feature: Add override_level to Logster::Logger allowing for threadsafe logger override
|
102
|
+
|
99
103
|
- 2016-10-24: Version 1.2.6
|
100
104
|
- Fix: Check if `Rails.env` is defined when using Logster in a none Rails project.
|
101
105
|
|
data/lib/logster.rb
CHANGED
data/lib/logster/logger.rb
CHANGED
@@ -9,6 +9,19 @@ module Logster
|
|
9
9
|
def initialize(store)
|
10
10
|
super(nil)
|
11
11
|
@store = store
|
12
|
+
@override_levels = nil
|
13
|
+
end
|
14
|
+
|
15
|
+
def override_level=(val)
|
16
|
+
tid = Thread.current.object_id
|
17
|
+
|
18
|
+
ol = @override_levels
|
19
|
+
if val.nil? && ol && ol.key?(tid)
|
20
|
+
ol.delete(tid)
|
21
|
+
@override_levels = nil if ol.length == 0
|
22
|
+
elsif val
|
23
|
+
(@override_levels ||= {})[tid] = val
|
24
|
+
end
|
12
25
|
end
|
13
26
|
|
14
27
|
def chain(logger)
|
@@ -37,9 +50,13 @@ module Logster
|
|
37
50
|
add_with_opts(*args,&block)
|
38
51
|
end
|
39
52
|
|
53
|
+
def level
|
54
|
+
ol = @override_levels
|
55
|
+
(ol && ol[Thread.current.object_id]) || @level
|
56
|
+
end
|
40
57
|
|
41
58
|
def add_with_opts(severity, message, progname, opts=nil, &block)
|
42
|
-
if severity <
|
59
|
+
if severity < level
|
43
60
|
return true
|
44
61
|
end
|
45
62
|
|
data/lib/logster/version.rb
CHANGED
data/test/logster/test_logger.rb
CHANGED
@@ -17,6 +17,20 @@ class TestLogger < Minitest::Test
|
|
17
17
|
@logger = Logster::Logger.new(@store)
|
18
18
|
end
|
19
19
|
|
20
|
+
def test_per_thread_override
|
21
|
+
@logger.override_level = 2
|
22
|
+
|
23
|
+
@logger.add(0, "test", "prog", backtrace: "backtrace", env: {a: "x"})
|
24
|
+
Thread.new do
|
25
|
+
@logger.add(0, "test", "prog", backtrace: "backtrace", env: {a: "x"})
|
26
|
+
end.join
|
27
|
+
|
28
|
+
@logger.override_level = nil
|
29
|
+
@logger.add(0, "test", "prog", backtrace: "backtrace", env: {a: "x"})
|
30
|
+
|
31
|
+
assert_equal 2, @store.calls.length
|
32
|
+
end
|
33
|
+
|
20
34
|
def test_backtrace
|
21
35
|
@logger.add(0, "test", "prog", backtrace: "backtrace", env: {a: "x"})
|
22
36
|
assert_equal "backtrace", @store.calls[0][3][:backtrace]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- UI for viewing logs in Rack
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -199,7 +199,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
199
199
|
version: '0'
|
200
200
|
requirements: []
|
201
201
|
rubyforge_project:
|
202
|
-
rubygems_version: 2.
|
202
|
+
rubygems_version: 2.5.2
|
203
203
|
signing_key:
|
204
204
|
specification_version: 4
|
205
205
|
summary: UI for viewing logs in Rack
|