IO Outputter invokes print then flush on the wrapped IO object. If the IO stream dies, IOOutputter sets itself to OFF and the system continues on its merry way.
To find out why an IO stream died, create a logger named ‘log4r’ and look at the output.
IOOutputter needs an IO object to write to.
# File log4r/outputter/iooutputter.rb, line 18 def initialize(_name, _out, hash={}) super(_name, hash) @out = _out end
perform the write
# File log4r/outputter/iooutputter.rb, line 40 def write(data) begin @out.print data @out.flush rescue IOError => ioe # recover from this instead of crash Logger.log_internal {"IOError in Outputter '#{@name}'!"} Logger.log_internal {ioe} close rescue NameError => ne Logger.log_internal {"Outputter '#{@name}' IO is #{@out.class}!"} Logger.log_internal {ne} close end end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.