logging-log4cxx-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sarna, Amit" <amit.sa...@credit-suisse.com>
Subject RE: Logging levels
Date Mon, 13 Aug 2007 09:04:06 GMT
Yep using it like this makes more sense, but unfortunately again doesn't work. I had a quick
look at source code (socketappender.cpp) and looks like the setOption function doesn't take
account of the threshold. 

void SocketAppender::setOption(const String& option,
        const String& value)
{
        if (StringHelper::equalsIgnoreCase(option, _T("remotehost")))
        {
                setRemoteHost(value);
        }
        else if (StringHelper::equalsIgnoreCase(option, _T("port")))
        {
                setPort(OptionConverter::toInt(value, DEFAULT_PORT));
        }
        else if (StringHelper::equalsIgnoreCase(option, _T("locationinfo")))
        {
                setLocationInfo(OptionConverter::toBoolean(value, false));
        }
        else if (StringHelper::equalsIgnoreCase(option, _T("reconnectiondelay")))
        {
                setReconnectionDelay(OptionConverter::toInt(value, DEFAULT_RECONNECTION_DELAY));
        }
        else
        {
                AppenderSkeleton::setOption(name, value);  // This is just an empty function

        }
}

It seems simple enough to add another case to set the threshold variable - I'll try it out
later and get back to the list..


Cheers
 Amit  

-----Original Message-----
From: Curt Arnold [mailto:carnold@apache.org] 
Sent: 10 August 2007 18:17
To: Log4CXX User
Subject: Re: Logging levels


On Aug 10, 2007, at 9:50 AM, Sarna, Amit wrote:

> Hi guys,
>   I've seen a few threads on what I'm about to ask but no success when 
> following them. I'd like to split my logging such that one appender 
> logs all messages of DEBUG level and above and another logs all 
> messages of WARN level and above. My current log4j config file is:
>
> log4j.rootLogger=DEBUG, myappender, SOCK 
> log4j.appender.myappender=org.apache.log4j.RollingFileAppender
> log4j.appender.myappender.File=../../log/abc.log
> log4j.appender.myappender.MaxFileSize=100KB
> log4j.appender.myappender.MaxBackupIndex=1
> log4j.appender.myappender.layout=org.apache.log4j.PatternLayout
> log4j.appender.myappender.layout.ConversionPattern=%d %-5p - %m%n 
> log4j.appender.SOCK=org.apache.log4j.net.SocketAppender
> log4j.appender.SOCK.RemoteHost=localhost
> log4j.appender.SOCK.Port=9245
> log4j.appender.SOCK.layout.ConversionPattern=%d{%d-%b %H:%M:%S.%J} 
> tid[%t] %-5p %l %m%n log4j.appender.SOCK.layout.TimeZone=GB
> log4j.appender.SOCK.LocationInfo=true
> log4j.appender.threshold.SOCK=WARN
> log4j.debug=true
>
>

> So I'm hoping that 'myappender' logs DEBUG and above and SOCK logs 
> WARN and above but this doesn't seem to work. Does any body have a 
> working example of this I could look at?
>
> I'm using log4cxx 0.9.7 and I need to use with non-XML config.
>
> Many Thanks
>   Amit
>
>


You are trying to set the threshold property on the SOCK appender, so the line should be:

log4j.appender.SOCK.threshold=WARN

Unfortunately, I could not find any unit test in either log4j or log4cxx that provided a sample
configuration file that demonstrated setting the threshold on an appender.

==============================================================================
Please access the attached hyperlink for an important electronic communications disclaimer:


http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html
==============================================================================


Mime
View raw message