Ticket #2629 enhancement closed wontfix

Opened 6 years ago

Last modified 3 years ago

passing the "why" argument to log.err is hard and crappy

Reported by: radix Owned by:
Priority: normal Milestone:
Component: core Keywords:
Cc: Branch:
Author: Launchpad Bug:

Description

try:
    1/0
except:
    log.err(None, "foo")

or log.err(_why="foo")

trying to pass why= directly causes the following error:

    msg(failure=_stuff, why=_why, isError=1, **kw)
TypeError: msg() got multiple values for keyword argument 'why'

Which is dumb. Either _why= should be renamed to why= or the special passing of why=_why should only happen if _why is not None.

Fixing this ticket should also entail fixing #2567

Change History

1

Changed 6 years ago by radix

  • status changed from new to assigned
  • owner changed from glyph to radix

2

Changed 3 years ago by exarkun

I like log.err(None, "foo") a lot, and I think that was the intended use when the feature was introduced. The parameter isn't named why because log.err accepts **kw and passes them on to log.msg. The leading underscore is an attempt to avoid collisions (perhaps a poor one, but there you go).

I think this should be closed as wontfix or turned into a documentation ticket for explaining this feature of log.err better in the logging howto.

What do you think, radix?

3

Changed 3 years ago by exarkun

  • status changed from assigned to closed
  • resolution set to wontfix

< radix> ok

4

Changed 2 years ago by <automation>

  • owner radix deleted
Note: See TracTickets for help on using tickets.