<html><head></head><body bgcolor="#FFFFFF"><div>With log.debug("The object is " + object), it will always call .toString() on object because the string argument needs to be constructed before the call to .debug().</div><div><br></div><div>To avoid this use either</div><div><br></div><div>  If (log.isDebugEnabled()) {</div><div>    Log.debug("The object is " + object);</div><div>  }</div><div><br></div><div>Or the slf/logback usage</div><div><br></div><div>  Log.debug("The object is {0}", object);</div><div><br></div><div>Which will delay the call to .toString() until it has determined that debug logging is needed.</div><div><br></div><div>Brett<br><br>Sent from my iPad</div><div><br>On 08/02/2013, at 7:43 AM, "Kristian Lind" <<a href="mailto:klpcrap@gmail.com">klpcrap@gmail.com</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div><span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">In a previous project I switched from commons-logging -> log4j to sl4j -> logback. </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">One of the reasons I did that was the overhead in log4j when providing a object in the log... </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">log.debug("This is a object" + object); </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">would cause the object.toString to be called even debug was not enabled. </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)"><span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">Now I work on a new project that uses commons-logging -> sl4j -> logback (jcl-over-slf4j) </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)"><span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">My question is now, will this still call object.toString.. even debug is not enabled </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)"><span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">import org.apache.commons.logging.Log; </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">import org.apache.commons.logging.LogFactory; </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">.... </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">log.debug("This is a object" + object); </span><br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">
<br style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)"><span style="font-family:Verdana,Geneva,Helvetica,Arial,sans-serif;font-size:13px;background-color:rgb(255,255,255)">I would like to get rid of commons-logging and jcl-over.sl4j and only have sl4j and logback.</span><br clear="all">
<div><br></div><br>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>Logback-user mailing list</span><br><span><a href="mailto:Logback-user@qos.ch">Logback-user@qos.ch</a></span><br><span><a href="http://mailman.qos.ch/mailman/listinfo/logback-user">http://mailman.qos.ch/mailman/listinfo/logback-user</a></span></div></blockquote></body></html>