Because of how Log::Log4perl was built, you don't need to do anything special in your code to support this multi-level priority logging -- each package can just use Log::Log4perl->get_logger() to get the the logging object and it all falls out in the wash.

(In theory, this type of configuration should work for Log4j and Log4net also.)