ANN: Logging Module v0.4.1 released

Vinay Sajip
3 Apr 2002 15:21:41 -0800

A new version of the proposed Python standard logging module (as per
PEP 282) has been released. You can get all the information from

There are "download" and "recent changes" links at the top of that
page, and there is quite a lot of new stuff including support for XML,
HTTP and SOAP, user-defined logger classes, a ConfigParser-based
configuration file format, a Tkinter GUI-based configurator and more!

As always, your feedback is most welcome (especially bug reports,
patches and suggestions for improvement).


Vinay Sajip
Red Dove Consultants Ltd.

Changes since the last version:
Bug fix SMTPHandler - extra \r\n needed (Oleg Orlov)
Added BufferingHandler, BufferingFormatter
Renamed getChainedPriority to getEffectiveLevel
Removed Logger.getRoot as it is redundant
Added to test Buffering classes and to show an
XMLFormatter example.
Added setLoggerClass.
Added to test setLoggerClass, using an example
Logger-derived class which outputs exception info even for DEBUG level
logging calls
Added to test a buffering implementation of SMTPHandler
Changed logging call implementation to allow keyword arguments (Kevin
Butler and others)
Changed default SysLogHandler implementation.
Renamed "additive" to "propagate" as it better describes the
Added HTTPHandler.
Modified to remove "both" option and to add "HTTP" and
"SOAP" options (SOAP option needs you to have PyXML-0.6.6 and ZSI
installed - for only, and not for the core logging module
Added to test HTTPHandler.
Added to test SOAPHandler.
Formatted to Python source guidelines (spaces, indent of 4, within 80
More method renamings (result of feedback) - _handle() renamed to
emit(), _logRecord() renamed to handle(). Renamed FATAL to CRITICAL
(David Goodger), but left fatal() and FATAL in (until PEP is changed)
Changed configuration file format to ConfigParser format.
Factored filter application functionality out to a new Filterer class.
The isLoggable() method is renamed to filter() in both Filter and
Filterer classes.
Altered SMTPHandler __init__ to accept (host, port) for the mail
internet address.
Added GUI configurator which uses Tkinter and the new configuration
file format. (See and an example configuration file in
Altered to test with the new file format.