In order to enable the rich logging handler via an external plugin we currently intercept the way that the KedroSession parses the contents of conf/base/logging.yml and ensure that the console key is updated to use the right handler.
I tried for agest to intercept the handlers after creation and change them dynamically through approaches like this but this is the only mechanism I could get to work.
Potential solutions to evaluate:
Work out the correct way to mutate the global logging objects so that the given log-handler is ignored without the need for monkey patching.
Given rich is becoming quite mature at this point I think there is a decent argument for this becoming the default handler in the core Kedro library.
Description
In order to enable the rich logging handler via an external plugin we currently intercept the way that the
KedroSession
parses the contents ofconf/base/logging.yml
and ensure that theconsole
key is updated to use the right handler.I tried for agest to intercept the handlers after creation and change them dynamically through approaches like this but this is the only mechanism I could get to work.
Potential solutions to evaluate: