Hi,

    Thanks for your quick response! Now I seem to get logging output 
like this:

34   [main] (GridSphere.java:68) INFO  
org.gridlab.gridsphere.portletcontainer.G
ridSphere  - Apache Tomcat/4.0.323

How do I get the actual method fo the class instead of [main]?? Is this 
something in my properties file, or do  I need another library call?

    Thanks, Jason

Ceki Gülcü wrote:

>
>
>
> class PortletLog {
>    ...
>    Logger logger;
>
>    public void debug(String msg) {
>          logger.log("package.name.PortletLog.", Level.DEBUG, msg, null);
>    }
>
> See javadocs for the method log(String callerFQCN, Priority level,
> Object message, Throwable t) in the org.apache.log4j.Category class.
>
>
> At 16:02 29.08.2002 +0200, you wrote:
>
>> Hi,
>>
>>    I'm trying to wrap the Logger object in Log4J into a proxy object, 
>> call it PortletLog
>>
>> So a client that wants to log would do something like this:
>>
>> PortletLog log = PortletLog.getInstance(MyClass.class);
>>
>> // log using same interface as Logger
>> log.log("blah blah");
>>
>> The PortletLog class looks like this:
>>
>> class PortletLog {
>>
>>    // must maintain a logger for each class in a hash or something
>>    private static Map logMap = new Hashtable();
>>    private Logger logger;
>>
>>    PortletLog getInstance(Clazz clazz) {
>>        Logger log = (Logger)logMap.get(clazz);
>>        if (log != null) return log;
>>        log = Logger.getLogger(clazz);
>>        logMap.put(clazz, new SportletLog(clazz));
>>        return log;
>>    }
>>
>>    public void log(String msg) {
>>          logger.log(msg);
>>    }
>> ..
>>
>> }
>>
>>    So I use the portletLog to maintain as many instance of Logger 
>> objects as there are unique classes that wish to log. This worked 
>> fine until we added config information in "%F %L" in the 
>> log4j.properties file to get the method name and line number of the 
>> logging class. Now, for that data, it always gives PortletLog line 86 
>> which is where PortletLog is actually doing the logging.
>> Is there any way of forwarding this information to the proxy object 
>> as well, such that it will print out the original line number and 
>> method of the class that logs thru PortletLog?
>>
>>    Thanks, Jason
>>
>>
>>
>>
>>
>>
>> --
>> To unsubscribe, e-mail:   
>> <mailto:[EMAIL PROTECTED]>
>> For additional commands, e-mail: 
>> <mailto:[EMAIL PROTECTED]>
>>
>
> --
> Ceki
>
>
> --
> To unsubscribe, e-mail:   
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: 
> <mailto:[EMAIL PROTECTED]>
>
>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to