Comment puis-je filtrer les messages de journal à partir d'infrastructures tierces externes? J'utilise Hibernate et Spring framework et je voudrais supprimer les logs pour que seuls mes logs log4j apparaissent.Filtrage des messages log4j des frameworks tiers?
Répondre
Dans mon fichier log4j.properties je mis le niveau de journalisation de l'enregistreur racine à l'erreur. Ensuite, pour les paquets que je veux spécifiquement enregistrer, comme mon code d'application, je définis le niveau de journalisation sur INFO ou DEBUG.
log4j.rootLogger=ERROR, stdout
log4j.logger.com.initech.tps=DEBUG
log4j.logger.org.hibernate.SQL=INFO
Je vois des collègues qui ont mis l'exploitation des racines bas et puis finissent par énumérer tout ce qu'ils ne veulent pas voir, qui semble juste en arrière pour moi. Je préférerais lister ce que je veux enregistrer que toutes les choses que je ne veux pas enregistrer. Le fait de désactiver complètement la connexion pour un composant tiers me semble être une mauvaise idée. Par exemple, Spring est relativement bruyant et utilise WARN pour des choses dont je n'ai pas vraiment besoin de savoir, mais s'il enregistre une entrée ERROR pour quelque chose, je veux le voir.
N'ajoutez simplement pas ces packages dans votre fichier log4j.properties. Par exemple, vous devez l'avoir pour Spring dans votre fichier de propriétés. Sortez-le si vous avez des entrées comme ci-dessous (tout ce qui commence par org.springframework). Idem doit être fait pour hiberner.
#Logs the SQL from Spring
log4j.logger.org.springframework.jdbc.core.JdbcTemplate=ERROR
#Logs the SQL parameters from Spring
log4j.logger.org.springframework.jdbc.core.StatementCreatorUtils=ERROR
De même, comme il a été mentionné, vous devez également définir les éléments suivants. J'ai oublié de mentionner ceci.
log4j.rootLogger=FATAL
or
log4j.rootLogger=ERROR
C'est l'inverse. L'enregistreur racine permet généralement tout, et vous devez ensuite désactiver ceux que vous ne voulez pas. D'où le = ERROR donc tous les niveaux inférieurs ne montrent pas. –
@ Thorbjørn Ravn Andersen: S'il vous plaît lire ce que j'ai dit. J'ai dit à OP de les sortir s'il avait une de ces entrées puisqu'il ne voulait pas voir les messages de ces paquets. – CoolBeans
Mettre des lignes similaires à celles de, empêchera la consignation du message de débogage ou d'information pour ces paquets, même si debug/info a été défini pour rootLogger. –
En log4j.properties vous pouvez définir des niveaux individuels sur une base par enregistreur:
log4j.logger.<name>=FATAL
Dans log4j.xml la syntaxe est
<logger name="<name>">
<level value="fatal"/>
</logger>
<nom> est souvent le plein nom de classe qualifié. Vous pouvez utiliser WARN ou ERROR au lieu de FATAL
Vous pouvez le faire en modifiant le niveau du journal dans le fichier log4j.properties/log4j.xml.
Vous devez définir le <level value="off"/>
de l'enregistreur si vous souhaitez filtrer les journaux du package, mais conserver la configuration de l'enregistreur pour une utilisation ultérieure. Vous pouvez également définir le niveau le plus élevé pour vous connecter uniquement en cas d'erreur ou de problème fatal.
entrées suivantes doivent être ajoutées à log4j.xml pour désactiver la journalisation des paquets de mise en veille prolongée et springframework:
<logger name="org.springframework">
<level value="off"/>
</logger>
<logger name="org.hibernate">
<level value="off"/>
</logger>
donc niveau peut être réglé pour le paquet parent comme dans ce cas si je ne veux pas de journaux de tous les paquets en commençant par org.springframework Je vais définir son niveau comme off. – YoK
- 1. Comment intégrer correctement des frameworks tiers dans mon application Cocoa?
- 2. Filtrage et acheminement des messages twitter
- 3. Filtrage des messages dans l'application WPF
- 4. Log4j - Filtrage des journaux pour le projet en cours seulement
- 5. Gestion des messages des utilisateurs non enregistrés par filtrage
- 6. Filtrage des exceptions signalées par des messages d'erreur Elmah
- 7. Comment désactiver log4j dans un fichier tiers?
- 8. RegExp pour le filtrage des messages de journal
- 9. log4j Traitement des exceptions
- 10. Des frameworks pour construire des applications web
- 11. Quels sont les frameworks iPhone tiers les plus utiles?
- 12. Une taxonomie des frameworks web?
- 13. Utilisation de log4j avec des classes héritées
- 14. Filtrage des ressources m2eclipse
- 15. Filtrage des requêtes SQL
- 16. AS3 Filtrage des objets
- 17. Filtrage des mesures MDX
- 18. Filtrage des objets hérités
- 19. Quels frameworks Java Web Services supportent les messages RPC/encodés?
- 20. Surcharge des messages d'erreur (validation) des messages Gems/Plugins
- 21. Filtrage des résultats dans solr
- 22. Filtrage des données avec jquery
- 23. ASP.NET Filtrage dynamique des données
- 24. Filtrage des données de l'accéléromètre
- 25. Liste de filtrage des tuples
- 26. ELMAH - Filtrage des erreurs 404
- 27. Filtrage des données dans R
- 28. Comment désactiver les messages d'avertissement dans httpclient pour log4j?
- 29. Comment sécuriser WCF avec des certificats tiers?
- 30. Liste des API tiers d'Objective-C iPhone?
+1 pour les références Espace de travail –