<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Artisan Numérique</title>
  <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1507"/>
  <link rel="self" type="application/atom+xml" href="http://artisan.karma-lab.net/node/1507/atom/feed"/>
  <id>http://artisan.karma-lab.net/node/1507/atom/feed</id>
  <updated>2008-05-03T10:44:53+02:00</updated>
  <entry>
    <title>Bloc-note &#039;Log4J&#039;</title>
    <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1507" />
    <id>http://artisan.karma-lab.net/node/1507</id>
    <published>2008-03-10T18:36:38+01:00</published>
    <updated>2008-05-03T10:44:53+02:00</updated>
    <author>
      <name>Ulhume</name>
    </author>
    <category term="java" />
    <category term="Aucun" />
    <category term="javafr" />
    <category term="OK" />
    <category term="Snipet" />
    <summary type="html"><![CDATA[<p>
  Bloc-Notes sur Log4J
</p>
    ]]></summary>
    <content type="html"><![CDATA[<p>
  Bloc-Notes sur Log4J
</p>
<!--break-->

	<a name='chapter_1'></a>
  <h2>Circuit</h2>
	


	<a name='chapter_2'></a>
  <h2>Chargement d'une configuration simple</h2>
	
<p>
   La configuration simple est un fichier <kbd>log4j.properties</kbd>. Log4J le trouve en cherchant dans le classpath. Il est possible d'en forcer un chargement par 

  <div class='code-block code-block-fragment'>
  <div class='container'>
  PropertyConfigurator.<span class="me1">load</span><span class="br0">&#40;</span>getClass<span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">getResource</span><span class="br0">&#40;</span><span class="st0">&quot;ma_configuration.log4j&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span>
  </div>
  
  </div>
</p>

	<a name='chapter_3'></a>
  <h2>Chargement d'une configuration XML</h2>
	
<p>Une configuration XML peut ressembler à cela :

  <div class='code-block code-block-fragment'>
  <div class='container'>
  <span class="sc3"><span class="re1">&lt;?xml</span> <span class="re0">version</span>=<span class="st0">&quot;1.0&quot;</span> <span class="re0">encoding</span>=<span class="st0">&quot;UTF-8&quot;</span> <span class="re2">?&gt;</span></span><br />
<span class="sc0">&lt;!DOCTYPE log4j:configuration SYSTEM &quot;log4j.dtd&quot;&gt;</span><br />
<span class="sc3"><span class="re1">&lt;log4j:configuration<span class="re2">&gt;</span></span></span><br />
&nbsp; <span class="sc3"><span class="re1">&lt;appender</span> <span class="re0">name</span>=<span class="st0">&quot;default&quot;</span> <span class="re0">class</span>=<span class="st0">&quot;org.apache.log4j.ConsoleAppender&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;layout</span> <span class="re0">class</span>=<span class="st0">&quot;org.apache.log4j.PatternLayout&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;param</span> <span class="re0">name</span>=<span class="st0">&quot;ConversionPattern&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;%c{1} - %m%n&quot;</span> <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;/layout<span class="re2">&gt;</span></span></span><br />
&nbsp; <span class="sc3"><span class="re1">&lt;/appender<span class="re2">&gt;</span></span></span><br />
<br />
&nbsp; <span class="sc3"><span class="re1">&lt;root<span class="re2">&gt;</span></span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;appender-ref</span> <span class="re0">ref</span>=<span class="st0">&quot;default&quot;</span> <span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;level</span> <span class="re0">value</span>=<span class="st0">&quot;debug&quot;</span><span class="re2">/&gt;</span></span><br />
&nbsp; <span class="sc3"><span class="re1">&lt;/root<span class="re2">&gt;</span></span></span><br />
<span class="sc3"><span class="re1">&lt;/log4j:configuration<span class="re2">&gt;</span></span></span>
  </div>
  
  </div>
</p>
<p>
  Pour la charger, ce sera le code :

  <div class='code-block code-block-fragment'>
  <div class='container'>
  DOMConfigurator.<span class="me1">load</span><span class="br0">&#40;</span>getClass<span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">getResource</span><span class="br0">&#40;</span><span class="st0">&quot;ma_configuration.log4j&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span>
  </div>
  
  </div>

</p>

	<a name='chapter_4'></a>
  <h2>Suppression de tous les appenders</h2>
	

  <div class='code-block code-block-fragment'>
  <div class='container'>
  Logger.<span class="me1">getRootLogger</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">removeAllAppenders</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span>
  </div>
  
  </div>

	<a name='chapter_5'></a>
  <h2>Ajout d'un nouvel appender</h2>
	

  <div class='code-block code-block-fragment'>
  <div class='container'>
  Logger.<span class="me1">getRootLogger</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">addAppender</span><span class="br0">&#40;</span><span class="kw1">new</span> ConsoleLogger<span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">createLogger</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="sy0">;</span>
  </div>
  
  </div>

	<a name='chapter_6'></a>
  <h2>Réglage global du niveau de verbosité</h2>
	

  <div class='code-block code-block-fragment'>
  <div class='container'>
  Logger.<span class="me1">getRootLogger</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">setLevel</span><span class="br0">&#40;</span>Level.<span class="me1">INFO</span><span class="br0">&#41;</span><span class="sy0">;</span>
  </div>
  
  </div>

	<a name='chapter_7'></a>
  <h2>Types d'appender</h2>
	
<dl><dt>ConsoleAppender</dt><dd>Sortie vers la console.</dd>
<dt>SyslogAppender</dt><dd>Sortie vers syslog.</dd></dl>


	<a name='chapter_8'></a>
  <h2>Patterns</h2>
	
<dl><dt>ConsoleAppender</dt><dd>Sortie vers la console.</dd>
<dt>SyslogAppender</dt><dd>Sortie vers syslog.</dd></dl>


	<a name='chapter_9'></a>
  <h2>Log4J vers Syslog</h2>
	
<p>

  <div class='code-block code-block-fragment'>
  <div class='container'>
  log4j.<span class="me1">rootLogger</span><span class="sy0">=</span>INFO, R<br />
application.<span class="me1">context</span><span class="sy0">=</span>tomcat<br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span><span class="sy0">=</span>org.<span class="me1">apache</span>.<span class="me1">log4j</span>.<span class="me1">net</span>.<span class="me1">SyslogAppender</span><br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">SyslogHost</span><span class="sy0">=</span>localhost<br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">layout</span><span class="sy0">=</span>org.<span class="me1">apache</span>.<span class="me1">log4j</span>.<span class="me1">PatternLayout</span><br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">layout</span>.<span class="me1">ConversionPattern</span><span class="sy0">=</span>backup<span class="sy0">:</span> <span class="sy0">%</span>m<span class="sy0">%</span>n
  </div>
  
  </div>
</p>


	<a name='chapter_10'></a>
  <h2>Un log4j vers un fichier</h2>
	
<p>

  <div class='code-block code-block-fragment'>
  <div class='container'>
  #<br />
# Configure the logger to output info level messages into a rolling log file.<br />
#<br />
log4j.<span class="me1">rootLogger</span><span class="sy0">=</span>INFO, R<br />
<br />
#<br />
# <span class="kw1">Default</span> output file name<br />
#<br />
&nbsp; application.<span class="me1">context</span><span class="sy0">=</span>tomcat<br />
<br />
#<br />
# Configuration <span class="kw1">for</span> a rolling log file.<br />
#<br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span><span class="sy0">=</span>org.<span class="me1">apache</span>.<span class="me1">log4j</span>.<span class="me1">RollingFileAppender</span><br />
#<br />
# Edit the next line to point to your logs directory.<br />
# The last part of the name is the log file name.<br />
#<br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AFile+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">File</span></a><span class="sy0">=/</span>var<span class="sy0">/</span>log<span class="sy0">/</span>webapp.<span class="me1">imapFeeder</span>.<span class="me1">log</span><br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">layout</span><span class="sy0">=</span>org.<span class="me1">apache</span>.<span class="me1">log4j</span>.<span class="me1">PatternLayout</span><br />
#log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">MaxFileSize</span><span class="sy0">=</span>5036KB<br />
#log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">MaxBackupIndex</span><span class="sy0">=</span><span class="nu0">4</span><br />
<br />
#<br />
# Print the date in ISO <span class="nu0">8601</span> format<br />
#<br />
log4j.<span class="me1">appender</span>.<span class="me1">R</span>.<span class="me1">layout</span>.<span class="me1">ConversionPattern</span><span class="sy0">=%</span>d <span class="sy0">%-</span>5p <span class="sy0">-</span> <span class="sy0">%</span>m<span class="sy0">%</span>n
  </div>
  
  </div>
</p>
    ]]></content>
  </entry>
</feed>
