Fix Version/s: None
Currently the butler sends all log output to lsst.log. Now that there is a way to forward all log messages from lsst.log to python (
DM-30996) change the way that butler (and derivatives such as ctrl_mpexec) handles logging. This will make everything consistent regardless of whether lsst.log is available and will simplify the implementation of DM-30977.
Oh, somehow I thought I saw that the C++ side was defaulting to DEBUG and relying on the Python side for filtering. But if that's not the case, then OK.
K-T is right as usual, and I missed that part. Python logging and lsst.log are initialized with different level, if --logging-level is not used then lsst.log will use DEBUG.
This call https://github.com/lsst/daf_butler/blob/master/python/lsst/daf/butler/cli/cliLog.py#L111 should use "INFO" to match Python basicConfig().
Doesn't this line override things though?
I don't see lsst.log accepting debug messages from python lsst.log usage (in the sense that isEnabledFor is not letting them through).
You are right, I missed that explicit call to _setLogLevel. Sorry for my confusion, indeed things look fine as they are now.
I think we are doing it right already by changing `log4cxx` log level/threshold in sync with Python. Logging macros that we define for C++ side do check effective logging level before formatting. And appender is not even called if message level is below logger threshold.