<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: EJAPP Top 10 countdown: #10 &#8211; Excessive logging</title>
	<atom:link href="http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/</link>
	<description></description>
	<lastBuildDate>Thu, 11 Mar 2010 16:23:01 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Le top 10 des problèmes de performances des applications J2EE par J2EE, Agilité et SOA&#160;:&#160;Le blog de Xebia France</title>
		<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/comment-page-1/#comment-7055</link>
		<dc:creator>Le top 10 des problèmes de performances des applications J2EE par J2EE, Agilité et SOA&#160;:&#160;Le blog de Xebia France</dc:creator>
		<pubDate>Thu, 03 May 2007 12:38:25 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/#comment-7055</guid>
		<description>[...] #10 - Logging excessif [...]</description>
		<content:encoded><![CDATA[<p>[...] #10 &#8211; Logging excessif [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Xebia France Blog</title>
		<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/comment-page-1/#comment-5158</link>
		<dc:creator>Xebia France Blog</dc:creator>
		<pubDate>Sun, 04 Mar 2007 23:24:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/#comment-5158</guid>
		<description>[...] Plusieurs problèmes dans cette approche: - le logger utilisé porte le nom de la classe. Il doit être configuré comme tel (y compris avec les mécanisme d&#039;héritage). Les noms de classe (et de package) n&#039;ont pas vraiment de sens pour les équipes d&#039;exploitation, ce qui limite souvent leur autonomie sur la configuration des traces. - les messages de debug manquent de consistance, et n&#039;ont de véritable intérêt que pour le développeur au moment de la mise au point de la classe concernée (ce qui, notons-le, n&#039;est pas critique; par nature, les messages de déboguage ne sont pas destinés aux exploitants). - si plusieurs threads exécutent simultanément la méthode, les traces seront entrelacées et il sera difficile de rétablir le séquencement des opérations - le message d&#039;erreur est laconique et la pile d&#039;appel, pour utile qu&#039;elle soit, n&#039;est interprétable que par l&#039;ingénierie. - il n&#039;y a pas de trace intermédiaire entre DEBUG et ERROR, ce qui limite la capacité de diagnostic en exploitation - l&#039;utilisation des API de log tel quel peut poser des problèmes de performance (cf ce billet) [...]</description>
		<content:encoded><![CDATA[<p>[...] Plusieurs problèmes dans cette approche: &#8211; le logger utilisé porte le nom de la classe. Il doit être configuré comme tel (y compris avec les mécanisme d&#8217;héritage). Les noms de classe (et de package) n&#8217;ont pas vraiment de sens pour les équipes d&#8217;exploitation, ce qui limite souvent leur autonomie sur la configuration des traces. &#8211; les messages de debug manquent de consistance, et n&#8217;ont de véritable intérêt que pour le développeur au moment de la mise au point de la classe concernée (ce qui, notons-le, n&#8217;est pas critique; par nature, les messages de déboguage ne sont pas destinés aux exploitants). &#8211; si plusieurs threads exécutent simultanément la méthode, les traces seront entrelacées et il sera difficile de rétablir le séquencement des opérations &#8211; le message d&#8217;erreur est laconique et la pile d&#8217;appel, pour utile qu&#8217;elle soit, n&#8217;est interprétable que par l&#8217;ingénierie. &#8211; il n&#8217;y a pas de trace intermédiaire entre DEBUG et ERROR, ce qui limite la capacité de diagnostic en exploitation &#8211; l&#8217;utilisation des API de log tel quel peut poser des problèmes de performance (cf ce billet) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ceki Gulcu</title>
		<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/comment-page-1/#comment-5138</link>
		<dc:creator>Ceki Gulcu</dc:creator>
		<pubDate>Sat, 03 Mar 2007 19:56:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/#comment-5138</guid>
		<description>The way SLF4J handles parameterized logging has nothing to do with JDK 1.5. SLF4J targets JDK 1.3 and above.

The time it takes to build the formatted message in SLF4J, that is parsing

log.debug(&quot;Entered myMethod with arguments {}, {}&quot;, arg0, arg1);

is ten times faster than parsing 
log.debug(&quot;Entered myMethod with arguments ${0}, ${1}&quot;, arg0, arg1);

We got the numbers from very simple benchmarks we did.</description>
		<content:encoded><![CDATA[<p>The way SLF4J handles parameterized logging has nothing to do with JDK 1.5. SLF4J targets JDK 1.3 and above.</p>
<p>The time it takes to build the formatted message in SLF4J, that is parsing</p>
<p>log.debug(&#8221;Entered myMethod with arguments {}, {}&#8221;, arg0, arg1);</p>
<p>is ten times faster than parsing<br />
log.debug(&#8221;Entered myMethod with arguments ${0}, ${1}&#8221;, arg0, arg1);</p>
<p>We got the numbers from very simple benchmarks we did.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vincent Partington</title>
		<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/comment-page-1/#comment-5099</link>
		<dc:creator>Vincent Partington</dc:creator>
		<pubDate>Thu, 01 Mar 2007 12:16:32 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/#comment-5099</guid>
		<description>Ceki, isn&#039;t it interesting that the JDK 1.5 language features provide performance benefits in such an unexpected area! I don&#039;t fully understand your point though: is the SLF4J logging idiom two times or ten times faster than the JBoss idiom? Have you get a benchmark for this?</description>
		<content:encoded><![CDATA[<p>Ceki, isn&#8217;t it interesting that the JDK 1.5 language features provide performance benefits in such an unexpected area! I don&#8217;t fully understand your point though: is the SLF4J logging idiom two times or ten times faster than the JBoss idiom? Have you get a benchmark for this?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ceki Gulcu</title>
		<link>http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/comment-page-1/#comment-4921</link>
		<dc:creator>Ceki Gulcu</dc:creator>
		<pubDate>Mon, 19 Feb 2007 14:28:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.xebia.com/2007/02/18/ejapp-top-10-countdown-10-excessive-logging/#comment-4921</guid>
		<description>The &lt;a href=&quot;http://www.slf4j.org/faq.html#logging_performance&quot; rel=&quot;nofollow&quot;&gt; logging idiom&lt;/a&gt; proposed by SLF4J executes about ten times faster than the JBoss alternative. In practice, there won&#039;t be any difference when a logging request is disabled. However, when the request is enabled, than the SLF4J version will typically log twice as fast.</description>
		<content:encoded><![CDATA[<p>The <a href="http://www.slf4j.org/faq.html#logging_performance" rel="nofollow"> logging idiom</a> proposed by SLF4J executes about ten times faster than the JBoss alternative. In practice, there won&#8217;t be any difference when a logging request is disabled. However, when the request is enabled, than the SLF4J version will typically log twice as fast.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
