Log4j: Redirection des FATAL uniquement
Bonjour,
Je souhaite, en plus de la configuration classique, que tous mes messages "FATAL" prennent une voie supplémentaire. En l'occurrence un mail à l'administrateur.
MAIS, je souhaite aussi que seuls les FATAL prennent ce chemin, alors que le reste sera enregistré en fichier.
Note: je pense que ce que je souhaite n'est pas possible, et qu'il me faudra plusieurs logger dans mon code. Cependant, si quelqu'un a une idée...
J'ai essayé la configuration suivante:
( exemple en console, ce ne sont que des tests )
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <?xml version="1.0" encoding="utf-8"?>
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Output the log message to system console.
-->
<appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="Dans un fichier : %-5p %c{1} - %m%n"/>
</layout>
</appender>
<appender name="FatalConsoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="Par mail : %-5p %c{1} - %m%n"/>
</layout>
</appender>
<root>
<priority value="fatal" />
<appender-ref ref="FatalConsoleAppender"/>
</root>
<category name="com.entreprise.logiciel" >
<priority value ="trace" />
<appender-ref ref="ConsoleAppender"/>
</category>
</log4j:configuration> |
J'obtiens, et c'est normal, mais ce n'est pas ce que je souhaite :
Code:
1 2 3 4 5 6
| Dans un fichier : TRACE essai_log4cxx - entree dans la fonction main
Par mail : TRACE essai_log4cxx - entree dans la fonction main
Dans un fichier : INFO essai_log4cxx - dans la fonction
Par mail : INFO essai_log4cxx - dans la fonction
Dans un fichier : FATAL essai_log4cxx - une erreur violente
Par mail : FATAL essai_log4cxx - une erreur violente |
Alors que je voudrais :
Code:
1 2 3 4
| Dans un fichier : TRACE essai_log4cxx - entree dans la fonction main
Dans un fichier : INFO essai_log4cxx - dans la fonction
Dans un fichier : FATAL essai_log4cxx - une erreur violente
Par mail : FATAL essai_log4cxx - une erreur violente |