selective logger disable/enable
Gary Jefferson
garyjefferson123 at yahoo.com
Thu Jan 25 01:54:46 EST 2007
So maybe I don't have all this figured out quite as well as I thought.
What I really want to do is set an environment variable, MYDEBUG, which
contains a list of wildcarded logger names, such as "a.*.c a.d" (which
becomes ['a.*.c', 'a.d'], and then selectively crank the loglevel up to
DEBUG for those that match.
In order to do that, I think I need something kind of like filters, but
for logger name... I'm not seeing how to do this, even after playing
with variations of test15, 18, and 21.
What I do have working at the moment is passing a list of non-wildcard
logger names, i.e., doing the wildcard expansion manually such as
"['a.b.c', 'a.c.c', 'a.f.c', 'a.d']. Is there anyway to automate this
dynamically?
BTW, I do understand that 'a.d' is essentially equivalent to 'a.d.*',
but I'm dealing with a hierarchy that doesn't always tidy up like that.
For example, I have top.network.server.http, top.network.server.smtp,
top.network.client.http, and top.network.client.smtp. Obviously, if I
only want server or client DEBUG msgs, this is easy. And sometimes
that's exactly what I want. Other times, I want only smtp DEBUG msgs,
and the hierarchy won't help me get that (unless I break it for just
getting client or server msgs), etc. So I would really like to figure
out how to do 'a.*.c'.
Any ideas?
Thanks again,
Gary
On Jan 23, 3:01 am, "Vinay Sajip" <vinay_sa... at yahoo.co.uk> wrote:
> Glad the tests/examples (log_testxx.py) helped. When I get a
> chance, I will try to work some of them into the docs...
>
> Best regards,
>
> Vinay Sajip
More information about the Python-list
mailing list