[ 
https://issues.apache.org/jira/browse/HADOOP-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12481087
 ] 

Philippe Gassmann commented on HADOOP-1078:
-------------------------------------------

The current configuration of log4j is prints stacktraces if you do 
"LOG.error("foo", e)" 
eg: I've just added one line in NameNode.open() method : LOG.error("TEST", new 
Exception("this is a test exception");

The result in the logs : 

2007-03-15 10:04:27,983 ERROR org.apache.hadoop.dfs.NameNode: TEST
java.lang.Exception: this is a test exception
        at org.apache.hadoop.dfs.NameNode.open(NameNode.java:209)
        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:337)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:538)

So it seems to be working :)

> Improve logging
> ---------------
>
>                 Key: HADOOP-1078
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1078
>             Project: Hadoop
>          Issue Type: Improvement
>            Reporter: Philippe Gassmann
>
> Loggers in hadoop are created using LogFactory.getLog("some package styled 
> things"); 
> This is very confusing since the string specified in getLog() sometime is the 
> class name sometime not. (eg : the class org.apache.hadoop.mapred.Task 
> contains a logger created by 
> LogFactory.getLog("org.apache.hadoop.mapred.TaskRunner"); which is very 
> confusing)
> I think that logger should be always created using  
> LogFactory.getLog(MyClass.class); and that if a class needs a logger, then a 
> specific logger must be crated for that class (ie: loggers are private).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to