Formatters have the following attributes and methods. They are
responsible for converting a LogRecord to (usually) a string
which can be interpreted by either a human or an external system. The
base
Formatter allows a formatting string to be specified. If none is
supplied, the default value of '%(message)s' is used.
A Formatter can be initialized with a format string which makes use of knowledge of the LogRecord attributes - such as the default value mentioned above making use of the fact that the user's message and arguments are pre-formatted into a LogRecord's message attribute. This format string contains standard python %-style mapping keys. See section 2.3.6, ``String Formatting Operations,'' for more information on string formatting.
Currently, the useful mapping keys in a LogRecord are:
| Format | Description | 
|---|---|
%(name)s | 
        Name of the logger (logging channel). | 
%(levelno)s | 
        Numeric logging level for the message (DEBUG, INFO, WARNING, ERROR, CRITICAL). | 
%(levelname)s | 
        Text logging level for the message
                        ('DEBUG', 'INFO',
                        'WARNING', 'ERROR',
                        'CRITICAL'). | 
%(pathname)s | 
        Full pathname of the source file where the logging call was issued (if available). | 
%(filename)s | 
        Filename portion of pathname. | 
%(module)s | 
        Module (name portion of filename). | 
%(lineno)d | 
        Source line number where the logging call was issued (if available). | 
%(created)f | 
        Time when the LogRecord was created (as returned by time.time()). | 
%(asctime)s | 
        Human-readable time when the LogRecord was created. By default this is of the form ``2003-07-08 16:49:45,896'' (the numbers after the comma are millisecond portion of the time). | 
%(msecs)d | 
        Millisecond portion of the time when the LogRecord was created. | 
%(thread)d | 
        Thread ID (if available). | 
%(threadName)s | 
        Thread name (if available). | 
%(process)d | 
        Process ID (if available). | 
%(message)s | 
        The logged message, computed as msg % args. | 
| [fmt[, datefmt]]) | 
'%(message)s' is used. If no datefmt
is specified, the ISO8601 date format is used.
| record) | 
'(asctime)', formatTime() is called to format the
event time. If there is exception information, it is formatted using
formatException() and appended to the message.
| record[, datefmt]) | 
| exc_info) | 
See About this document... for information on suggesting changes.