Method: Logger#reopen
- Defined in:
- lib/logger.rb
#reopen(logdev = nil, shift_age = nil, shift_size = nil, shift_period_suffix: nil, binmode: nil) ⇒ Object
Sets the logger’s output stream:
-
If
logdevisnil, reopens the current output stream. -
If
logdevis a filepath, opens the indicated file for append. -
If
logdevis an IO stream (usually$stdout,$stderr, or an open File object), opens the stream for append.
Example:
logger = Logger.new('t.log')
logger.add(Logger::ERROR, 'one')
logger.close
logger.add(Logger::ERROR, 'two') # Prints 'log writing failed. closed stream'
logger.reopen
logger.add(Logger::ERROR, 'three')
logger.close
File.readlines('t.log')
# =>
# ["# Logfile created on 2022-05-12 14:21:19 -0500 by logger.rb/v1.5.0\n",
# "E, [2022-05-12T14:21:27.596726 #22428] ERROR -- : one\n",
# "E, [2022-05-12T14:23:05.847241 #22428] ERROR -- : three\n"]
642 643 644 645 646 |
# File 'lib/logger.rb', line 642 def reopen(logdev = nil, shift_age = nil, shift_size = nil, shift_period_suffix: nil, binmode: nil) @logdev&.reopen(logdev, shift_age: shift_age, shift_size: shift_size, shift_period_suffix: shift_period_suffix, binmode: binmode) self end |