def immediate_at=( level )
      @immediate.clear

      # get the immediate levels -- no buffering occurs at these levels, and
      # a log message is written to the logging destination immediately
      immediate_at =
        case level
        when String; level.split(',').map {|x| x.strip}
        when Array; level
        else Array(level) end

      immediate_at.each do |lvl|
        num = ::Logsly::Logging182.level_num(lvl)
        next if num.nil?
        @immediate[num] = true
      end
    end
def immediate_at=( level )
      @immediate.clear

      # get the immediate levels -- no buffering occurs at these levels, and
      # a log message is written to the logging destination immediately
      immediate_at =
        case level
        when String; level.split(',').map {|x| x.strip}
        when Array; level
        else Array(level) end

      immediate_at.each do |lvl|
        num = ::Logsly::Logging182.level_num(lvl)
        next if num.nil?
        @immediate[num] = true
      end
    end
Configure the levels that will trigger an immediate flush of the
 logging buffer. When a log event of the given level is seen, the
 buffer will be flushed immediately. Only the levels explicitly given
 in this assignment will flush the buffer; if an "error" message is
 configured to immediately flush the buffer, a "fatal" message will not
 even though it is a higher level. Both must be explicitly passed to
 this assignment.

 You can pass in a single level name or number, an array of level
 names or numbers, or a string containing a comma separated list of level
 names or numbers.

   immediate_at = :error
   immediate_at = [:error, :fatal]
   immediate_at = "warn, error"