logster 1.2.6 → 1.2.7

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: 73ac40d105113be3d3c0edce83c3366b02ecca3e
4
- data.tar.gz: 4ff3f1f52dc7c89ba5fa383910de8f8112cf12f1
3
+ metadata.gz: 541dd3325db25772144891890825a001ee7d45ab
4
+ data.tar.gz: a78543266d1ee381f7b835ba6d13323227c03043
5
5
  SHA512:
6
- metadata.gz: 5c0a1472ad9a88b2621e1a3f63556c47f0d62e25e8cdd5efdd17da2d22e0cfd4fc5db49bfbcc68fb38415b3f6471d232eddb2a18f45e310defa26292ea196974
7
- data.tar.gz: 41ed003b708970304e7873ec0657e586e59c016c92d2d4828a803226c8f4d73b824c96e6944fd8c8c2453efcf64c7ebc70f254314fdf244a3499ac9f2a3a8596
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
 
@@ -42,7 +42,7 @@ module Logster
42
42
  end
43
43
 
44
44
  def self.set_environments(envs)
45
- @config.environments = envs
45
+ config.environments = envs
46
46
  end
47
47
  end
48
48
 
@@ -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 < @level
59
+ if severity < level
43
60
  return true
44
61
  end
45
62
 
@@ -1,3 +1,3 @@
1
1
  module Logster
2
- VERSION = "1.2.6"
2
+ VERSION = "1.2.7"
3
3
  end
@@ -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.6
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: 2016-10-24 00:00:00.000000000 Z
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.6.7
202
+ rubygems_version: 2.5.2
203
203
  signing_key:
204
204
  specification_version: 4
205
205
  summary: UI for viewing logs in Rack