I thought that we'd converged after the last meeting, but looking over that page I'm still not clear that the logger is able to support what I think we need. This is probably my ignorance, so bear with me... I won't be able to attend the meeting (sorry).
There's no definition of "context" --- the first example uses the string 'czar' and I don't know how that's associated with a logger. If it needs to be created explicitly from a config file I think we have a problem.
The performance of formatted output looks worrying. Is that because you moved from printf to boost::format and didn't get a chance to figure out how to optimise the latter? We could live with printf if varargs solves the speed problem (and we're logging POD). We probably need to support boost::format too.
> Having enough debug levels. I'd like to have at least 3 and maybe 5 different debug levels, and preferably control them by a numerical parameter not a logger name (protolog.debug(3, ...) rather than protolog.debug3(...)) to enable changing the level of groups of debug commands. Yes, you can do this with mylog = {3: protolog.debug3); mylog[3](...) but that's more work.
You provides only 2 by default, trace and debug (+ info + warn + error + fatal). That's not enough. There's some python to support other levels, but it's not standardized.
> output control. It is convenient to make different debug levels format with different indents
Is this addressed? It's not critical.
> I think we need to be able to change logging levels from an interactive python prompt.
>
> This is probably supported, but with
> debug("afw.image", 1, ...)
> debug("afw.image.fitsio", 2, ...)
> Can I enable afw debug logging at level 1 (which applies to afw.image and afw.image.fitsio), then switch afw.image to 2 (which also applies to afw.image.fitsio), and then change afw.image.fitsio to yet another log level?
Can you provide a complete example to illustrate this?
My impression is that the levels are handled per-logger, and thus per context (== logger?? See comment on contexts above). Is that right? If so, before I can control the debugging level for a given package I need to create a logger, and that requires an xml/log4j file which users will *not* want to do.
R
########################################################################
Use REPLY-ALL to reply to list
To unsubscribe from the QSERV-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=QSERV-L&A=1
|