'Format the specified record as text.
The record\'s attribute dictionary is used as the operand to a
string formatting operation which yields the returned string.
Before formatting the dictionary, a couple of preparatory steps
are carried out. The message attribute of the record is computed
using LogRecord.getMessage(). If the formatting string uses the
time (as determined by a call to usesTime(), formatTime() is
called to format the event time. If there is exception information,
it is formatted using formatException() and appended to the message.'

def format(self, record):

    record.message = record.getMessage()
    if self.usesTime():
        record.asctime = self.formatTime(record, self.datefmt)
    s = (self._fmt % record.__dict__)
    if record.exc_info:
        if (not record.exc_text):
            record.exc_text = self.formatException(record.exc_info)
    if record.exc_text:
        if (s[(-1):] != '\n'):
            s = (s + '\n')
        try:
            s = (s + record.exc_text)
        except UnicodeError:
            s = (s + record.exc_text.decode(sys.getfilesystemencoding()))
    return s
