Apache9 commented on pull request #1640:
URL: https://github.com/apache/hbase/pull/1640#issuecomment-626597733


   Added a hbase-logging module, put the log4j related code in this module only 
so other modules do not need to depend on log4j at compile scope. See the 
comments of Log4jUtils and InternalLog4jUtils for more details.
   
   Add a log4j.properties to the test jar of hbase-logging module, so for other 
sub modules we just need to depend on the test jar of hbase-logging module at 
test scope to output the log to console, without placing a log4j.properties in 
the test resources as they all (almost) have the same content. And this test 
module will not be included in the assembly tarball so it will not mess up the 
binary distribution(but there are two hadoop jars which contain 
log4j.properties...)
   
   Ban direct commons-logging dependency, and ban commons-logging and log4j 
imports in non-test code, to avoid mess up the downstream users logging 
framework. In hbase-logging module we do need to use log4j classes and the 
trick is to use full class name.
   
   Add jcl-over-slf4j and jul-to-slf4j dependencies, as some of our 
dependencies use jcl or jul as logging framework, we should also redirect their 
log message to slf4j.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to