-
Improvement
-
Resolution: Won't Fix
-
Major
-
None
-
None
New logger is nice, but you either see all Debug messages, nor none.
We need an API by which one can tell it to log selectively.
I suggest there is a global mutable set of package/class specifiers, and when a logging call is made, a check is done
(1) is any logging enabled for this loglevel?
(2) if so, is selective logging enabled at all?
(3) if so, is this class or its package in the set of selected loggers?
This would allow code module by code-module control over what debug messages one wants, by making some sort of api call like
log.enableSelective(this) // on a class where you want to see the log calls
Logger.enableSelective(daffodil.dsom) // e.g., a whole package
The specific name of the functions is not the issue here, it's that there's a couple of different idioms for establishing what is selected.
Oh, and these calls probably need the LogLevel specified as well. I.e., I want debug logging from package X, and Info logging from package y, and only errors and warnings from everything else.
These can be embedded in the code, or called from outside (as options to the compile/runtime API.