# File lib/chef/expander/logger.rb, line 76
      def add(severity=UNKNOWN, message = nil, progname = nil, &block)
        return true unless severity >= @level

        message ||= progname # level methods (e.g, #debug) pass explicit message as progname

        if message.nil? && block_given?
          message = yield
        end

        self << sprintf("[%s] %s: %s\n", Time.new.rfc2822(), LEVEL_TO_STR[severity], msg2str(message))
        true
      end