2009-11-24 3 views
0

J'ai un fichier EAR composé de deux modules. Les deux exposent des services et partagent un code commun. Imaginez que l'oreille a un common.jar partagé par un webservices.war et webapp.war. J'utilise log4j pour consigner les activités. Je voudrais pouvoir avoir deux fichiers journaux (webservices.log et webapp.log) capturant les événements qui sont spécifiques à chacun d'eux plus tout ce qui est géré par common.jar.deux fichiers log4j pour EAR avec deux modules

Comment dois-je configurer mes catégories et mes extensions pour y parvenir?

Au moment où j'ai les paquets suivants:
com.myapp pour des trucs partagés
de com.myapp.webservices pour les webservices et
com.myapp.webapp pour la webapp. Mon problème est que je ne sais pas comment je peux capturer le com.myapp (truc commun) dans les deux fichiers journaux en utilisant un seul fichier de configuration log4j. J'ai essayé d'installer plusieurs fichiers de configuration, mais lorsque JBoss fonctionnerait OK Websphere briserait et l'inverse ...

Merci

+0

vous devrez peut-être d'avoir un fichier de configuration différent pour jboss et websphere, et ceux-ci devraient être externes à votre fichiers d'oreille. – broschb

+0

Merci. En attendant j'ai trouvé ceci: http://www.jboss.org/community/wiki/Log4jrepositoryselector mais je ne suis pas sûr de savoir comment cela fonctionnera puisque tous mes modules sont dans mon oreille plutôt que deux guerres séparées. – nicktmro

Répondre

0

Vous pouvez conserver la configuration de log4j où vous voulez, assurez-vous juste Logger est capable d'initialiser le moteur à partir du fichier de configuration. Je ne vois aucune raison pour laquelle un fichier de configuration ne fonctionne pas pour Jboss et WebSphere. Pourriez-vous être plus précis sur ce qui casse?

Vous devez configurer deux appenders de fichiers nommés webservices et webapp dans les mêmes fichiers de configuration log4j et utiliser la redirection des noms de packages vers l'appender correspondant.

< nom de l'enregistreur = ""> de com.myapp.webservices
< ref appender-ref = "webservices" />
</enregistreur>

Nom de l'enregistreur < = "com.myapp.webapp" >
< ref appender-ref = "webapp" />
</enregistreur>

Questions connexes