[Python-Dev] New-style formatting in the logging module (was Re: cpython (3.2): Issue #14123: Explicitly mention that old style % string formatting has caveats) (original) (raw)
Nick Coghlan ncoghlan at gmail.com
Mon Feb 27 02:59:45 CET 2012
- Previous message: [Python-Dev] PEP 415: Implementing PEP 409 differently
- Next message: [Python-Dev] New-style formatting in the logging module (was Re: cpython (3.2): Issue #14123: Explicitly mention that old style % string formatting has caveats)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Mon, Feb 27, 2012 at 10:44 AM, Larry Hastings <larry at hastings.org> wrote:
On 02/26/2012 03:33 PM, Guido van Rossum wrote:
One thing I'd like to see happening regardless is support for new-style formatting in the logging module. It's a little tricky to think how that would work, alas -- should this be a property of the logger or of the call? There already is some support. logging.Formatter objects can be initialized with a "style" parameter, making this a property of the logger. (New in 3.2.) http://docs.python.org/py3k/library/logging.html#formatter-objects Is that what you had in mind?
It's half the puzzle (since composing the event fields into the actual log output is a logger action, you know the style when you supply the format string). The other half is that logging's lazy formatting currently only supporting printf-style format strings - to use brace formatting you currently have to preformat the messages, so you incur the formatting cost even if the message gets filtered out by the logging configuration. For that, a logger setting doesn't work, since one logger may be shared amongst multiple modules, some of which may use printf formatting, others brace formatting.
It could possibly be a flag to getLogger() though - provide a facade on the existing logger type that sets an additional event property to specify the lazy formatting style.
Cheers, Nick.
-- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
- Previous message: [Python-Dev] PEP 415: Implementing PEP 409 differently
- Next message: [Python-Dev] New-style formatting in the logging module (was Re: cpython (3.2): Issue #14123: Explicitly mention that old style % string formatting has caveats)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]