<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:symbol;font-size:12pt"><div>Hi,<br><br>I I am a new user of logback and would like to use it in my
project. Currently we are using log4j, but we have very strict
performance requirements and it would be gr8 if logback performs better
then log4j. I did some preliminary tests to compare the performace of
the two ..and i observed that at some places logback is certainly
better , but i also observed a behaviour which is contrary to what is
described in the documentation. I am attaching the source code and my
config files for the test . The queries I have are as following -
<br><br>1. The documentation says that the "logbacklogger.debug("SEE IF THIS IS LOGGED {}.", i);"&nbsp; is faster then <br><br>if (logbacklogger.isDebugEnabled())<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; logbacklogger.debug("SEE IF THIS IS LOGGED " + i + ".");
<br><br>but i observed that this is only true if the logging is
configured for debug . For any other logging level the second approach
is still more performant. This means that in a production env I must
still have the check for isDebugEnabled. Is that intended or am i
missing something.
<br><br>2. Something very strange that i observed in my test was that
if i run my outer loop 10 times then always at the 7th invocation the
logback took much longer time. I was able to get this behaviour
consistently.<br>
<br><br>Anyways for the time being I am attaching my source code and
the config files below ...maybe somebody can point out the errors or
way of improvement.<br><br><br>##############################<div id="mb_0"><wbr>##########JAVA FILE##########################<wbr>########################
<br>package mandy.test.programs;<br><br>import org.slf4j.Logger;<br>import org.slf4j.LoggerFactory;<br><br>public class Logtester {<br><br>&nbsp; static Logger logbacklogger = LoggerFactory.getLogger(Logtester.class);<br>&nbsp; static 
org.apache.log4j.Logger log4jlogger = org.apache.log4j.Logger<wbr>.getLogger(Logtester.class);<br><br>&nbsp; public static void main(String[] args) throws InterruptedException {<br><br>&nbsp;&nbsp;&nbsp; for (int j = 0; j &lt; 5; j++ ) {<script><!--
D(["mb","<br>      \nSystem.out.println(&quot;############################<WBR>###########&quot;);<br>      System.out.println(&quot;TEST NUMBER &quot;+j);<br>      System.out.println(&quot;############################<WBR>###########&quot;);<br>      long start \u003d \nSystem.nanoTime();<br>       for (int i \u003d 0; i &lt; 500; i++ ) {<br>       log4jlogger.debug(&quot;SEE IF THIS IS LOGGED &quot; + i + &quot;.&quot;);<br>       }<br>          <br>       System.out.println(&quot;time taken in nanoseconds in first log4j test is &quot; + (\nSystem.nanoTime() - start));<br>          <br>       start \u003d System.nanoTime();<br>      for (int i \u003d 0; i &lt; 500; i++ ) {<br>        if (log4jlogger.isDebugEnabled())<br>          log4jlogger.debug(&quot;SEE IF THIS IS LOGGED &quot; + i + &quot;.&quot;);\n<br>      }<br>      System.out.println(&quot;time taken in nanoseconds
 in second log4j test is &quot; + (System.nanoTime() - start));<br><br>      Thread.sleep(1000);<br>       start \u003d System.nanoTime();<br>      for (int i \u003d 0; i &lt; 500; i++ ) {\n<br>        logbacklogger.debug(&quot;SEE IF THIS IS LOGGED &quot; + i + &quot;.&quot;);<br>      }<br>      System.out.println(&quot;time taken in nanoseconds in first logback test is &quot; + (System.nanoTime() - start));\n<br><br>       start \u003d System.nanoTime();<br>      for (int i \u003d 0; i &lt; 500; i++ ) {<br>        if (logbacklogger.isDebugEnabled())<br>          logbacklogger.debug(&quot;SEE IF THIS IS LOGGED &quot; + i + &quot;.&quot;);\n<br>      }<br>      System.out.println(&quot;time taken in nanoseconds in second logback test is &quot; + (System.nanoTime() - start));<br><br>      Thread.sleep(1000);<br>      start \u003d System.nanoTime();<br>      for (int i \u003d 0; i &lt; 500;
 i++ ) {\n<br>        logbacklogger.debug(&quot;SEE IF THIS IS LOGGED {}.&quot;, i);<br>      }<br>      System.out.println(&quot;time taken in nanoseconds in third logback test is &quot; + (System.nanoTime() - start));<br>    }<br>\n  }<br>}<br><br><br><br><br>##############################<WBR>#####################LOG4J CONFIG########################",1]
);

//--></script><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
System.out.println("############################<wbr>###########");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("TEST NUMBER "+j);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("############################<wbr>###########");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; long start = 
System.nanoTime();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 500; i++ ) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; log4jlogger.debug("SEE IF THIS IS LOGGED " + i + ".");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("time taken in nanoseconds in first log4j test is " + (
System.nanoTime() - start));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start = System.nanoTime();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 500; i++ ) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (log4jlogger.isDebugEnabled())<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; log4jlogger.debug("SEE IF THIS IS LOGGED " + i + ".");
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("time taken in nanoseconds in second log4j test is " + (System.nanoTime() - start));<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thread.sleep(1000);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start = System.nanoTime();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 500; i++ ) {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; logbacklogger.debug("SEE IF THIS IS LOGGED " + i + ".");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("time taken in nanoseconds in first logback test is " + (System.nanoTime() - start));
<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start = System.nanoTime();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 500; i++ ) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (logbacklogger.isDebugEnabled())<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; logbacklogger.debug("SEE IF THIS IS LOGGED " + i + ".");
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("time taken in nanoseconds in second logback test is " + (System.nanoTime() - start));<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Thread.sleep(1000);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start = System.nanoTime();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (int i = 0; i &lt; 500; i++ ) {
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; logbacklogger.debug("SEE IF THIS IS LOGGED {}.", i);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("time taken in nanoseconds in third logback test is " + (System.nanoTime() - start));<br>&nbsp;&nbsp;&nbsp; }<br>
&nbsp; }<br>}<br><br><br><br><br>##############################<wbr>#####################LOG4J CONFIG########################<script><!--
D(["mb","<WBR>##############<br>&lt;?xml version\u003d&quot;1.0&quot; encoding\u003d&quot;UTF-8&quot;?&gt; <br>&lt;!DOCTYPE log4j:configuration SYSTEM &quot;../resource/log4j.dtd&quot;&gt;\n<br><br><br>&lt;log4j:configuration xmlns:log4j\u003d&quot;<a href\u003d\"http://jakarta.apache.org/log4j/\" target\u003d\"_blank\" onclick\u003d\"return top.js.OpenExtLink(window,event,this)\">http://jakarta.apache.org<WBR>/log4j/</a>&quot;<br>                     debug\u003d&quot;false&quot;&gt;<br>       <br><br>        &lt;appender name\u003d&quot;TestLogfile&quot; class\u003d&quot;\norg.apache.log4j.RollingFileApp<WBR>ender&quot;&gt;<br>                &lt;param name\u003d&quot;File&quot; value\u003d&quot;d:/mandy/Test_Programs<WBR>/testlog4j.log&quot;/&gt;<br>                &lt;param name\u003d&quot;MaxFileSize&quot; value\u003d&quot;1000KB&quot;/&gt;\n<br>                &lt;param
 name\u003d&quot;maxBackupIndex&quot; value\u003d&quot;1&quot;/&gt;<br>                &lt;param name\u003d&quot;Append&quot; value\u003d&quot;true&quot;/&gt;<br>                &lt;layout class\u003d&quot;org.apache.log4j.PatternLayout\n&quot;&gt;<br>                         &lt;param name\u003d&quot;ConversionPattern&quot; <br>                              <WBR>                             value\u003d&quot;%d{ISO8601} %5p [%t] %c{1} %X{transactionId} - %m%n&quot;/&gt;\n<br>                &lt;/layout&gt;<br><br>        &lt;/appender&gt;<br><br>        &lt;logger name\u003d&quot;mandy.test.programs&quot; additivity\u003d&quot;false&quot;&gt;<br>                &lt;level value\u003d&quot;debug&quot;/&gt;\n<br>                &lt;appender-ref ref\u003d&quot;TestLogfile&quot;/&gt;<br>       
 &lt;/logger&gt;<br><br><br>&lt;/log4j:configuration&gt;<br><br>##############################<WBR>###############LOGBACK CONFIG########################<WBR>####################\n<br>&lt;configuration&gt;<br><br>    &lt;appender name\u003d&quot;TestLogfile&quot; class\u003d&quot;ch.qos.logback.core.FileAppende<WBR>r&quot;&gt;<br>        &lt;File&gt;d:/mandy/Test_Programs<WBR>/testlogback.log&lt;/File&gt;<br>        &lt;Append&gt;false&lt;/Append&gt;\n<br>        &lt;Encoding&gt;UTF-8&lt;/Encoding&gt;<br>        &lt;BufferedIO&gt;true&lt;/BufferedIO&gt;",1]
);

//--></script><wbr>##############<br>&lt;?xml version="1.0" encoding="UTF-8"?&gt; <br>&lt;!DOCTYPE log4j:configuration SYSTEM "../resource/log4j.dtd"&gt;
<br><br><br>&lt;log4j:configuration xmlns:log4j="<a href="http://jakarta.apache.org/log4j/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://jakarta.apache.org<wbr>/log4j/</a>"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug="false"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;appender name="TestLogfile" class="
org.apache.log4j.RollingFileApp<wbr>ender"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="File" value="d:/mandy/Test_Programs<wbr>/testlog4j.log"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="MaxFileSize" value="1000KB"/&gt;
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="maxBackupIndex" value="1"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="Append" value="true"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;layout class="org.apache.log4j.PatternLayout
"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;param name="ConversionPattern" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<wbr>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; value="%d{ISO8601} %5p [%t] %c{1} %X{transactionId} - %m%n"/&gt;
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/layout&gt;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/appender&gt;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;logger name="mandy.test.programs" additivity="false"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;level value="debug"/&gt;
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;appender-ref ref="TestLogfile"/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/logger&gt;<br><br><br>&lt;/log4j:configuration&gt;<br><br>##############################<wbr>###############LOGBACK CONFIG########################<wbr>####################
<br>&lt;configuration&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;appender name="TestLogfile" class="ch.qos.logback.core.FileAppende<wbr>r"&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;File&gt;d:/mandy/Test_Programs<wbr>/testlogback.log&lt;/File&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;Append&gt;false&lt;/Append&gt;
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;Encoding&gt;UTF-8&lt;/Encoding&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;BufferedIO&gt;true&lt;/BufferedIO&gt;<script><!--
D(["mb","<br>        &lt;ImmediateFlush&gt;true&lt;/Immediate<WBR>Flush&gt;<br>        <br>        &lt;layout class\u003d&quot;ch.qos.logback.classic.PatternL<WBR>ayout\n&quot;&gt;<br>            &lt;Pattern&gt;%-4relative [%thread] %-5level %logger{35} - %msg%n&lt;/Pattern&gt;<br>        &lt;/layout&gt;<br>    &lt;/appender&gt;<br>    <br>    &lt;root&gt;<br>        &lt;level value\u003d&quot;debug&quot; /&gt;\n<br>        &lt;appender-ref ref\u003d&quot;TestLogfile&quot; /&gt;<br>    &lt;/root&gt;<br>&lt;/configuration&gt;<br><br><br>##############################<WBR>###########OUTPUT WITH LOG LEVEL SET TO INFO IN BOTH CONFIG FILES ############################\n<br>##############################<WBR>#########<br>TEST NUMBER 0<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 1287035<br>time taken in nanoseconds in second log4j test is 425473\n<br>time taken in
 nanoseconds in first logback test is 1988521<br>time taken in nanoseconds in second logback test is 60622<br>time taken in nanoseconds in third logback test is 1378387<br>##############################<WBR>#########\n<br>TEST NUMBER 1<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 2332139<br>time taken in nanoseconds in second log4j test is 115378<br>time taken in nanoseconds in first logback test is 1550756\n<br>time taken in nanoseconds in second logback test is 50565<br>time taken in nanoseconds in third logback test is 374069<br>##############################<WBR>#########<br>TEST NUMBER 2<br>##############################<WBR>#########\n<br>time taken in nanoseconds in first log4j test is 2050540<br>time taken in nanoseconds in second log4j test is 670755<br>time taken in nanoseconds in first logback test is 846756<br>time taken in nanoseconds in second logback test is 415974\n<br>time taken in nanoseconds in third
 logback test is 1142044<br>##############################<WBR>#########<br>TEST NUMBER 3<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 321828\n",1]
);

//--></script><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;ImmediateFlush&gt;true&lt;/Immediate<wbr>Flush&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;layout class="ch.qos.logback.classic.PatternL<wbr>ayout
"&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;Pattern&gt;%-4relative [%thread] %-5level %logger{35} - %msg%n&lt;/Pattern&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/layout&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/appender&gt;<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &lt;root&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;level value="debug" /&gt;
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;appender-ref ref="TestLogfile" /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/root&gt;<br>&lt;/configuration&gt;<br><br><br>##############################<wbr>###########OUTPUT WITH LOG LEVEL SET TO INFO IN BOTH CONFIG FILES ############################
<br>##############################<wbr>#########<br>TEST NUMBER 0<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 1287035<br>time taken in nanoseconds in second log4j test is 425473
<br>time taken in nanoseconds in first logback test is 1988521<br>time taken in nanoseconds in second logback test is 60622<br>time taken in nanoseconds in third logback test is 1378387<br>##############################<wbr>#########
<br>TEST NUMBER 1<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 2332139<br>time taken in nanoseconds in second log4j test is 115378<br>time taken in nanoseconds in first logback test is 1550756
<br>time taken in nanoseconds in second logback test is 50565<br>time taken in nanoseconds in third logback test is 374069<br>##############################<wbr>#########<br>TEST NUMBER 2<br>##############################<wbr>#########
<br>time taken in nanoseconds in first log4j test is 2050540<br>time taken in nanoseconds in second log4j test is 670755<br>time taken in nanoseconds in first logback test is 846756<br>time taken in nanoseconds in second logback test is 415974
<br>time taken in nanoseconds in third logback test is 1142044<br>##############################<wbr>#########<br>TEST NUMBER 3<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 321828
<script><!--
D(["mb","<br>time taken in nanoseconds in second log4j test is 43581<br>time taken in nanoseconds in first logback test is 358985<br>time taken in nanoseconds in second logback test is 51962<br>time taken in nanoseconds in third logback test is 127390\n<br>##############################<WBR>#########<br>TEST NUMBER 4<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 323784<br>time taken in nanoseconds in second log4j test is 43581\n<br>time taken in nanoseconds in first logback test is 362337<br>time taken in nanoseconds in second logback test is 45816<br>time taken in nanoseconds in third logback test is 124597<br>##############################<WBR>#########\n<br>TEST NUMBER 5<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 326578<br>time taken in nanoseconds in second log4j test is 43581<br>time taken in nanoseconds in first logback test is 5767493\n<br>time taken in
 nanoseconds in second logback test is 25981<br>time taken in nanoseconds in third logback test is 103365<br>##############################<WBR>#########<br>TEST NUMBER 6<br>##############################<WBR>#########\n<br>time taken in nanoseconds in first log4j test is 261206<br>time taken in nanoseconds in second log4j test is 28775<br>time taken in nanoseconds in first logback test is 239416<br>time taken in nanoseconds in second logback test is 5867\n<br>time taken in nanoseconds in third logback test is 59505<br>##############################<WBR>#########<br>TEST NUMBER 7<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 223492\n<br>time taken in nanoseconds in second log4j test is 12851<br>time taken in nanoseconds in first logback test is 235784<br>time taken in nanoseconds in second logback test is 5867<br>time taken in nanoseconds in third logback test is
 58667\n<br>##############################<WBR>#########<br>TEST NUMBER 8<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 220977",1]
);

//--></script><br>time taken in nanoseconds in second log4j test is 43581<br>time taken in nanoseconds in first logback test is 358985<br>time taken in nanoseconds in second logback test is 51962<br>time taken in nanoseconds in third logback test is 127390
<br>##############################<wbr>#########<br>TEST NUMBER 4<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 323784<br>time taken in nanoseconds in second log4j test is 43581
<br>time taken in nanoseconds in first logback test is 362337<br>time taken in nanoseconds in second logback test is 45816<br>time taken in nanoseconds in third logback test is 124597<br>##############################<wbr>#########
<br>TEST NUMBER 5<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 326578<br>time taken in nanoseconds in second log4j test is 43581<br>time taken in nanoseconds in first logback test is 5767493
<br>time taken in nanoseconds in second logback test is 25981<br>time taken in nanoseconds in third logback test is 103365<br>##############################<wbr>#########<br>TEST NUMBER 6<br>##############################<wbr>#########
<br>time taken in nanoseconds in first log4j test is 261206<br>time taken in nanoseconds in second log4j test is 28775<br>time taken in nanoseconds in first logback test is 239416<br>time taken in nanoseconds in second logback test is 5867
<br>time taken in nanoseconds in third logback test is 59505<br>##############################<wbr>#########<br>TEST NUMBER 7<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 223492
<br>time taken in nanoseconds in second log4j test is 12851<br>time taken in nanoseconds in first logback test is 235784<br>time taken in nanoseconds in second logback test is 5867<br>time taken in nanoseconds in third logback test is 58667
<br>##############################<wbr>#########<br>TEST NUMBER 8<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 220977<script><!--
D(["mb","<br>time taken in nanoseconds in second log4j test is 12851\n<br>time taken in nanoseconds in first logback test is 238299<br>time taken in nanoseconds in second logback test is 5867<br>time taken in nanoseconds in third logback test is 61460<br>##############################<WBR>#########\n<br>TEST NUMBER 9<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 223212<br>time taken in nanoseconds in second log4j test is 12851<br>time taken in nanoseconds in first logback test is 237461\n<br>time taken in nanoseconds in second logback test is 5308<br>time taken in nanoseconds in third logback test is 62019<br><br><br><br>##############################<WBR>###########OUTPUT WITH LOG LEVEL SET TO DEBUG IN BOTH CONFIG FILES ############################\n<br>##############################<WBR>#########<br>TEST NUMBER 0<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is
 85486004<br>time taken in nanoseconds in second log4j test is 35743649\n<br>time taken in nanoseconds in first logback test is 22309540<br>time taken in nanoseconds in second logback test is 7795963<br>time taken in nanoseconds in third logback test is 19922365<br>##############################<WBR>#########\n<br>TEST NUMBER 1<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 39167827<br>time taken in nanoseconds in second log4j test is 33095826<br>time taken in nanoseconds in first logback test is 3618616\n<br>time taken in nanoseconds in second logback test is 2657601<br>time taken in nanoseconds in third logback test is 6253309<br>##############################<WBR>#########<br>TEST NUMBER 2<br>##############################<WBR>#########\n<br>time taken in nanoseconds in first log4j test is 12328941<br>time taken in nanoseconds in second log4j test is 13580218<br>time taken in nanoseconds in first logback test is
 2401422<br>time taken in nanoseconds in second logback test is 2868521\n<br>time taken in nanoseconds in third logback test is 4724902",1]
);

//--></script><br>time taken in nanoseconds in second log4j test is 12851
<br>time taken in nanoseconds in first logback test is 238299<br>time taken in nanoseconds in second logback test is 5867<br>time taken in nanoseconds in third logback test is 61460<br>##############################<wbr>#########
<br>TEST NUMBER 9<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 223212<br>time taken in nanoseconds in second log4j test is 12851<br>time taken in nanoseconds in first logback test is 237461
<br>time taken in nanoseconds in second logback test is 5308<br>time taken in nanoseconds in third logback test is 62019<br><br><br><br>##############################<wbr>###########OUTPUT WITH LOG LEVEL SET TO DEBUG IN BOTH CONFIG FILES ############################
<br>##############################<wbr>#########<br>TEST NUMBER 0<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 85486004<br>time taken in nanoseconds in second log4j test is 35743649
<br>time taken in nanoseconds in first logback test is 22309540<br>time taken in nanoseconds in second logback test is 7795963<br>time taken in nanoseconds in third logback test is 19922365<br>##############################<wbr>#########
<br>TEST NUMBER 1<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 39167827<br>time taken in nanoseconds in second log4j test is 33095826<br>time taken in nanoseconds in first logback test is 3618616
<br>time taken in nanoseconds in second logback test is 2657601<br>time taken in nanoseconds in third logback test is 6253309<br>##############################<wbr>#########<br>TEST NUMBER 2<br>##############################<wbr>#########
<br>time taken in nanoseconds in first log4j test is 12328941<br>time taken in nanoseconds in second log4j test is 13580218<br>time taken in nanoseconds in first logback test is 2401422<br>time taken in nanoseconds in second logback test is 2868521
<br>time taken in nanoseconds in third logback test is 4724902<script><!--
D(["mb","<br>##############################<WBR>#########<br>TEST NUMBER 3<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 12460243\n<br>time taken in nanoseconds in second log4j test is 11747583<br>time taken in nanoseconds in first logback test is 2559543<br>time taken in nanoseconds in second logback test is 2694477<br>time taken in nanoseconds in third logback test is 4801727\n<br>##############################<WBR>#########<br>TEST NUMBER 4<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 11915481<br>time taken in nanoseconds in second log4j test is 12330618\n<br>time taken in nanoseconds in first logback test is 2379073<br>time taken in nanoseconds in second logback test is 2888076<br>time taken in nanoseconds in third logback test is 2698667<br>##############################<WBR>#########\n<br>TEST NUMBER 5<br>##############################<WBR>#########<br>time
 taken in nanoseconds in first log4j test is 15098288<br>time taken in nanoseconds in second log4j test is 11025144<br>time taken in nanoseconds in first logback test is 8196013\n<br>time taken in nanoseconds in second logback test is 2065067<br>time taken in nanoseconds in third logback test is 2888076<br>##############################<WBR>#########<br>TEST NUMBER 6<br>##############################<WBR>#########\n<br>time taken in nanoseconds in first log4j test is 10594922<br>time taken in nanoseconds in second log4j test is 9976687<br>time taken in nanoseconds in first logback test is 2229892<br>time taken in nanoseconds in second logback test is 2172902\n<br>time taken in nanoseconds in third logback test is 2692800<br>##############################<WBR>#########<br>TEST NUMBER 7<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 10521728\n<br>time taken in nanoseconds in second log4j test is 10123354<br>time taken in
 nanoseconds in first logback test is 2148597<br>time taken in nanoseconds in second logback test is 2135746",1]
);

//--></script><br>##############################<wbr>#########<br>TEST NUMBER 3<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 12460243
<br>time taken in nanoseconds in second log4j test is 11747583<br>time taken in nanoseconds in first logback test is 2559543<br>time taken in nanoseconds in second logback test is 2694477<br>time taken in nanoseconds in third logback test is 4801727
<br>##############################<wbr>#########<br>TEST NUMBER 4<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 11915481<br>time taken in nanoseconds in second log4j test is 12330618
<br>time taken in nanoseconds in first logback test is 2379073<br>time taken in nanoseconds in second logback test is 2888076<br>time taken in nanoseconds in third logback test is 2698667<br>##############################<wbr>#########
<br>TEST NUMBER 5<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 15098288<br>time taken in nanoseconds in second log4j test is 11025144<br>time taken in nanoseconds in first logback test is 8196013
<br>time taken in nanoseconds in second logback test is 2065067<br>time taken in nanoseconds in third logback test is 2888076<br>##############################<wbr>#########<br>TEST NUMBER 6<br>##############################<wbr>#########
<br>time taken in nanoseconds in first log4j test is 10594922<br>time taken in nanoseconds in second log4j test is 9976687<br>time taken in nanoseconds in first logback test is 2229892<br>time taken in nanoseconds in second logback test is 2172902
<br>time taken in nanoseconds in third logback test is 2692800<br>##############################<wbr>#########<br>TEST NUMBER 7<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 10521728
<br>time taken in nanoseconds in second log4j test is 10123354<br>time taken in nanoseconds in first logback test is 2148597<br>time taken in nanoseconds in second logback test is 2135746<script><!--
D(["mb","<br>time taken in nanoseconds in third logback test is 2933893\n<br>##############################<WBR>#########<br>TEST NUMBER 8<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 10182579<br>time taken in nanoseconds in second log4j test is 10013563\n<br>time taken in nanoseconds in first logback test is 2300851<br>time taken in nanoseconds in second logback test is 2087137<br>time taken in nanoseconds in third logback test is 2761803<br>##############################<WBR>#########\n<br>TEST NUMBER 9<br>##############################<WBR>#########<br>time taken in nanoseconds in first log4j test is 9720230<br>time taken in nanoseconds in second log4j test is 10646605<br>time taken in nanoseconds in first logback test is 2647264\n<br>time taken in nanoseconds in second logback test is 2164800<br>time taken in nanoseconds in third logback test is 2681905<br><br>\n",0]
);
D(["ce"]);

//--></script><br>time taken in nanoseconds in third logback test is 2933893
<br>##############################<wbr>#########<br>TEST NUMBER 8<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 10182579<br>time taken in nanoseconds in second log4j test is 10013563
<br>time taken in nanoseconds in first logback test is 2300851<br>time taken in nanoseconds in second logback test is 2087137<br>time taken in nanoseconds in third logback test is 2761803<br>##############################<wbr>#########
<br>TEST NUMBER 9<br>##############################<wbr>#########<br>time taken in nanoseconds in first log4j test is 9720230<br>time taken in nanoseconds in second log4j test is 10646605<br>time taken in nanoseconds in first logback test is 2647264
<br>time taken in nanoseconds in second logback test is 2164800<br>time taken in nanoseconds in third logback test is 2681905</div></div></div><br>

<hr size=1>
Don't get soaked.  Take a<a href="
http://tools.search.yahoo.com/shortcuts/?fr=oni_on_mail&#news"> quick peek at the forecast </a><br> with the<a href="
http://tools.search.yahoo.com/shortcuts/?fr=oni_on_mail&#news">Yahoo! Search weather shortcut.</a></body></html>