On Sat, Jun 15, 2013 at 11:09 AM, Christopher Armstrong <radix@twistedmatrix.com> wrote:
On Thu, Jun 13, 2013 at 5:14 PM, Glyph <glyph@twistedmatrix.com> wrote:
Hello everybody. Today I'd like to talk about everyone's favorite subsystem within Twisted: logging.
There are a number of problems with Twisted's logging system.
The general theme of these problems is that Twisted log system was designed with some intended use-cases in mind, but its implementation was stopped halfway through and none of those use-cases were really well satisfied.
At various conferences, and in person at various times, we've gotten together to express frustration at the logging system, but I don't think that the problems with it have ever been really thoroughly written down.
Wilfredo has been working on logging here: http://trac.calendarserver.org/browser/CalendarServer/trunk/twext/python/log.... This began as an attempt to just address some issues with our own logging wrappers, but has been growing into a design that is more fully capable of replacing logging within Twisted wholesale. I hope one of us can contribute it to Twisted soon, but in the meanwhile, please feel free to provide feedback - hopefully if some people can provide a bit of informal feedback now, the formal review process can be shorter and more pleasant :).
I like it. Let's merge it.
I think I would just want one more feature:
Logger().emit(dudelog.LogLevel.warn, a="hi")
Right now, this doesn't spit out anything into my log file, with default observers. I want it to emit some simple representation of the keys and values. On the other hand, the same is true of log.msg(a="hi"), but maybe this should be implemented (somehow) in Logger() codepath to avoid breaking compatibility? -- Christopher Armstrong http://radix.twistedmatrix.com/ http://planet-if.com/