def reopen
      each do |appender|
        begin
          next unless appender.respond_to?(:reopen)

          logger.trace "Reopening appender: #{appender.name}"
          appender.reopen
        rescue Exception => exc
          logger.error "Failed to re-open appender: #{appender.inspect}", exc
        end
      end
      logger.trace 'All appenders re-opened'
    end
def reopen
      each do |appender|
        begin
          next unless appender.respond_to?(:reopen)

          logger.trace "Reopening appender: #{appender.name}"
          appender.reopen
        rescue Exception => exc
          logger.error "Failed to re-open appender: #{appender.inspect}", exc
        end
      end
      logger.trace 'All appenders re-opened'
    end
After a fork the appender thread is not running, start it if it is not running.