A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2002-March/021760.html below:

[Python-Dev] Re: PEP 282 comments

[Python-Dev] Re: PEP 282 commentsVinay Sajip vinay_sajip@red-dove.com
Mon, 25 Mar 2002 23:28:22 -0000
[Jim Fulton]
> We have a need to make it easy to include error traceback in logs
> regardless of the level.
I believe we have two possible mechanisms now: either
(a) define a specific method which always includes tracebacks, and pass the
level as a parameter:
  def exception(self, level, msg, *args):
     # log 'msg % args' with traceback at specified level

(b) use a keyword parameter on all of debug(), info(), warn(), error() and
fatal(), all of which will have a common signature, for example

  def debug(self, msg, *args, **kwargs)
    # log 'msg % args' at DEBUG level, include traceback if kwargs
["exc_info"] evaluates to true.

I'm equally comfortable with either approach. Though I share your
reservations about kwargs, I'm persuaded by Kevin Butler's argument that the
kwargs way allows greater extensibility. But either way will allow Zope
logging the flexibility that Jeremy advocated.

>   D. Provide an exception formatter that delays formatting until a message
>      is logged. I don't like this so much because I'd prefer that the
decision
>      about whether to show a tracebeck be a policy of the back end.

Formatting of the arguments is delayed for as long as possible after
logging. A caller can check that the logger would actually record an event
before bothering to compute the arguments for the message.

if logger.isEnabledFor(logging.WARN):
  # compute arguments arg1, arg2 etc. (could be expensive)
  logger.warn(msg, arg1, arg2)

Regards

Vinay Sajip






RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4