Child loggers should inherit missing configuration from the root logger
The Kea ARM has the following paragraph:
This relationship is important, as each child logger derives its default
configuration from its parent root logger. In the typical case, the root
logger configuration is the only logging configuration specified in the
configuration file and so applies to all loggers. If an entry is made
for a given logger, any attributes specified override those of the root
logger, whereas any not specified are inherited from it.
There are three possible entries:
- severity
- debuglevel
- output_options
In practice, none of them are inherited. We should either:
- change the docs to explain the actual behavior, possibly removing that paragraph
- OR implement logger configuration inheritance
The following unit tests pass succesfully, suggesting that part of the inheritance is already implemented:
LoggerTest.SeverityInheritance
LoggerTest.EffectiveSeverityInheritance
LoggerTest.DebugLevelInheritance
I suspect the inheritance last worked prior to 2010 when Kea used logcxx.