This PR was previously reviewed and committed as #2778. I reverted it to fix a 
bug in Log4jAgent#configure which was unconditionally updating the log level 
which resulted in commands such as validate-disk-store logging info level log 
statements. This is now fixed.

Fixes:
* GEODE-2644: Provide ability to configure Geode appenders in log4j2.xml
* GEODE-5789: gfsh command "change loglevel" only updates the cache.getLogger
* GEODE-5637: Flaky: SingleHopClientExecutorWithLoggingIntegrationTest fails 
intermittently

High level description of these changes:

1. Follow log4j2 best practices
Make the Geode appenders configurable from log4j2.xml and pausable so that we 
can delete the majority of manipulating log4j2 core code. Geode used to 
dynamically add/remove appenders, now we pause/resume appenders that remain 
registered. Also, use log4j2 core testing JUnit Rule for integration tests 
involving a log4j2.xml config file.
2. Make log4j2 core dependency optional
Replace direct manipulation of singletons from Geode code with a simple 
internal LoggingSession API that makes log4j2 core optional and makes Geode 
logging/alerting pluggable for other logging engines such as Logback.


[ Full content available at: https://github.com/apache/geode/pull/2867 ]
This message was relayed via gitbox.apache.org for 
[email protected]

Reply via email to