File tree Expand file tree Collapse file tree 1 file changed +4
-12
lines changed
activesupport/lib/active_support Expand file tree Collapse file tree 1 file changed +4
-12
lines changed Original file line number Diff line number Diff line change @@ -9,10 +9,6 @@ module ActiveSupport
9
9
module LoggerThreadSafeLevel # :nodoc:
10
10
extend ActiveSupport ::Concern
11
11
12
- included do
13
- cattr_accessor :local_levels , default : Concurrent ::Map . new ( initial_capacity : 2 ) , instance_accessor : false
14
- end
15
-
16
12
Logger ::Severity . constants . each do |severity |
17
13
class_eval ( <<-EOT , __FILE__ , __LINE__ + 1 )
18
14
def #{ severity . downcase } ? # def debug?
@@ -21,25 +17,21 @@ def #{severity.downcase}? # def debug?
21
17
EOT
22
18
end
23
19
24
- def local_log_id
25
- Fiber . current . __id__
26
- end
27
-
28
20
def local_level
29
- self . class . local_levels [ local_log_id ]
21
+ # Note: Thread#[] is fiber-local
22
+ Thread . current [ :logger_thread_safe_level ]
30
23
end
31
24
32
25
def local_level = ( level )
33
26
case level
34
27
when Integer
35
- self . class . local_levels [ local_log_id ] = level
36
28
when Symbol
37
- self . class . local_levels [ local_log_id ] = Logger ::Severity . const_get ( level . to_s . upcase )
29
+ level = Logger ::Severity . const_get ( level . to_s . upcase )
38
30
when nil
39
- self . class . local_levels . delete ( local_log_id )
40
31
else
41
32
raise ArgumentError , "Invalid log level: #{ level . inspect } "
42
33
end
34
+ Thread . current [ :logger_thread_safe_level ] = level
43
35
end
44
36
45
37
def level
You can’t perform that action at this time.
0 commit comments