ÉTAIT la journalisation - Java Util Logging et Log4j


Je cherche des confirmations sur ce qui suit:

  1. En utilisant Websphere Application Server Admin Console, nous pouvons spécifier certaines configurations de journalisation et cela montre également les classes de votre application (comme indiqué ci-dessous). Si j'active la connexion à la console ÉTAIT, cela ne fonctionnera-t-il que si Mon application (et d'autres classes qui y sont mentionnées) y ont été implémentées par JUL? entrez la description de l'image ici

  2. Par défaut la journalisation à l'aide de la console WAS est effectuée dans le fichier de trace ({{SERVER_LOG_ROOT} / trace.journal). Cela peut-il être fait pour console aussi? (Je pense que oui, il suffit de le changer en {{SERVER_LOG_ROOT} / SystemOut.journal)

  3. Existe-t-il un moyen de configurer les propriétés Log4j également à partir de la console WAS? (Je pense que non, nous devons donc utiliser d'autres moyens pour le rendre configurable Log4j).

PS: Je comprends que JUL fournit une abstraction ainsi que sa propre implémentation. Les questions ci-dessus sont posées en gardant à l'esprit la mise en œuvre de JUL:)

Author: Robert Munteanu, 2011-01-28

1 answers

Bonjour Nous juste quand à travers le même exercice: JUL vs Log4j lors de l'utilisation ÉTAIT. Nous avons décidé d'aller pour Log4j.

1) Oui si votre application utilise JUL, vous devriez pouvoir changer le niveau de cette console.

2) Je ne suis pas sûr.

3) Non vous ne pouvez pas changer Log4j de la console WAS. Dans notre cas, nous avons créé un simple MBean afin de pouvoir contrôler le niveau de log Lo4j de chaque WebApp (via wsadmin). Il existe également un JSP agréable et simple de BEA que vous pouvez inclure dans votre WebApp pour avoir une interface utilisateur voir chaque catégorie.

Si vous décidez d'utiliser JUL (sur log4j), assurez-vous de comprendre l'implication suivante:

  • JUL n'a pas beaucoup de gestionnaires prêts à l'emploi.

  • JUL est au niveau de la JVM, Tout ce que vous App partagerez. Si vous développez un Hanlder JUL personnalisé, toutes les applications Web partageront la même instance.

  • Parce que les gestionnaires JUL sont courants, il est difficile de diviser chaque application dans un fichier journal séparé(un par WebApp).

  • Quand en utilisant une bibliothèque tierce (Spring, Ibatis, etc.) et si vous utilisez JUL, lorsque vous changerez le niveau de journal en DÉBOGAGE sur Spring, il sera modifié pour TOUTE votre WebApp. Si vous avez besoin de grain plus fin (changement de niveau sur Spring sur une WebApp spécifique), il est préférable d'intégrer Log4j dans chaque WebApp.

J'espère que cela vous aidera

 3
Author: Aerosteak, 2011-01-28 22:04:29