logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ralph Goers <ralph.go...@dslextreme.com>
Subject Re: Migrating from log4j 1.2 to log4j 2
Date Fri, 31 Jan 2014 19:46:20 GMT
Gary, there are tons of unit tests that get the appenders.  You have to get the Configuration
from the loggerContext.  That is where the Appenders are, not on the Loggers.

Ralph

On Jan 30, 2014, at 6:23 PM, Gary Gregory <garydgregory@gmail.com> wrote:

> I have finally created a separate sandbox for our app server to test
> porting from log4j1 to 2.
> 
> The first thing I run into? Just this issue! ;)
> 
> We have code like this:
> 
> Logger.getRootLogger().getAllAppenders()
> 
> Why? Because the server looks for the log file (if any) so that it can
> return its tail to our client side admin console.
> 
> I do not care if the functionality is part of the API, as long as it is in
> the Core. We have custom appenders so we are tied to Log4j (version 1 ATM).
> 
> So what's a clean way to get this? I see:
> 
> - API: org.apache.logging.log4j.LogManager.getContext() but
> org.apache.logging.log4j.spi.LoggerContext does not surface appenders.
> - Core: org.apache.logging.log4j.core.Logger.getAppenders()
> 
> So I think I have a solution:
> 
> Map<String, Appender> appenders = ((org.apache.logging.log4j.core.Logger)
> LogManager.getRootLogger()).getAppenders();
> 
> Where LogManager is in org.apache.logging.log4j.
> 
> Gary
> 
> 
> On Thu, Jan 30, 2014 at 4:23 PM, Remko Popma <remko.popma@gmail.com> wrote:
> 
>> Hi Abhishek,
>> 
>> These are currently private fields and not easily accessible.
>> Can you explain your use case? Why do you need this?
>> 
>> Best regards,
>> Remko
>> 
>> 
>> On Thu, Jan 30, 2014 at 2:33 PM, ~Abhi$hek~ <boyoboy18@gmail.com> wrote:
>> 
>>> Hello Log4j 2 experts,
>>> 
>>> 
>>> 
>>> I am in the process of migrating my application from log4j 1.2 to log4j
>> 2.0
>>> 
>>> I have existing code:
>>> 
>>> Enumeration appenders = logger.getAllAppenders();
>>> 
>>> .
>>> 
>>> .
>>> 
>>> .
>>> 
>>> fileBackupIndex = rollingFileAppender.getMaxBackupIndex();
>>> 
>>> maxFileSize = rollingFileAppender.getMaximumFileSize();
>>> 
>>> 
>>> 
>>> In log4j 2.0 I could not find way to replace above java code. How to get
>>> list of all appenders and how to get the max value defined for
>> RollingFile
>>> appender programmatically?
>>> 
>>> Regards,
>>> Abhishek
>>> 
>> 
> 
> 
> 
> -- 
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> Java Persistence with Hibernate, Second Edition<http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory


---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Mime
View raw message