Skip to content

Commit 959e764

Browse files
committed
Put back *stdlib_logger methods to keep compatibility
1 parent ad52e28 commit 959e764

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

lib/concurrent/configuration.rb

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,41 @@ def self.use_simple_logger(level = Logger::FATAL, output = $stderr)
4545
Concurrent.global_logger = create_simple_logger level, output
4646
end
4747

48+
# @return [Logger] Logger with provided level and output.
49+
# @deprecated
50+
def self.create_stdlib_logger(level = Logger::FATAL, output = $stderr)
51+
logger = Logger.new(output)
52+
logger.level = level
53+
logger.formatter = lambda do |severity, datetime, progname, msg|
54+
formatted_message = case msg
55+
when String
56+
msg
57+
when Exception
58+
format "%s (%s)\n%s",
59+
msg.message, msg.class, (msg.backtrace || []).join("\n")
60+
else
61+
msg.inspect
62+
end
63+
format "[%s] %5s -- %s: %s\n",
64+
datetime.strftime('%Y-%m-%d %H:%M:%S.%L'),
65+
severity,
66+
progname,
67+
formatted_message
68+
end
69+
70+
lambda do |loglevel, progname, message = nil, &block|
71+
logger.add loglevel, message, progname, &block
72+
end
73+
end
74+
75+
# Use logger created by #create_stdlib_logger to log concurrent-ruby messages.
76+
# @deprecated
77+
def self.use_stdlib_logger(level = Logger::FATAL, output = $stderr)
78+
Concurrent.global_logger = create_stdlib_logger level, output
79+
end
80+
81+
# TODO (pitr-ch 27-Dec-2016): remove deadlocking stdlib_logger methods
82+
4883
# Suppresses all output when used for logging.
4984
NULL_LOGGER = lambda { |level, progname, message = nil, &block| }
5085

0 commit comments

Comments
 (0)