[racket] 5.3's "mzc optimizer" log-debug, and log "facility" in general

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Thu Aug 30 11:28:59 EDT 2012

At Thu, 30 Aug 2012 10:50:01 -0400, Greg Hendershott wrote:
> So you can define multiple and hierarchical loggers. It seems like
> this is the intended way to handle something like a "facility"?

It looks like we're going to add a `current-optimization-logger'
parameter to Racket, and the optimizer will send its messages there.
So, you won't see optimizer messages when you look at debug messages to
the main logger.

Maybe we should also add an environment variable that causes the
initial optimization logger to make itself a child of the main logger.
Then, when you set the environment variable and look at messages to the
main logger, you would see optimization logging, too. (Is there a
better way to go than environment variables?)


Would that be a good way to externally select logging information in
general? I imagine a form

 (define-logger zoo)

that binds

 current-zoo-logger
 log-zoo-error
 log-zoo-warning

etc., and arranges for the initial zoo logger to be a child of the
current logger iff the ZOO_LOG environment variable is set. Also, the
initial logger's name would be 'zoo, so that messages propagated to the
current logger would be prefixed with "zoo:".


Posted on the users mailing list.