113 votes

Affichage d'une transaction de printemps dans le journal

J'ai configuré Spring avec un support transactionnel. Existe-t-il un moyen de consigner les transactions simplement pour m'assurer de tout configurer correctement? Afficher dans le journal est un bon moyen de voir ce qui se passe.

99voto

Bozho Points 273663

dans votre log4j.properties (pour les autres bûcherons, ou log4j format xml, consultez la documentation)

En fonction de votre gestionnaire de transactions, vous pouvez définir le niveau de journalisation du framework spring pour qu'il vous donne plus d'infos sur les transactions. Par exemple, dans le cas de l'utilisation d' JpaTransactionManager, vous définissez

log4j.logger.org.springframework.orm.jpa=INFO

(c'est le paquet de votre gestionnaire de transactions), et aussi

log4j.logger.org.springframework.transaction=INFO

Si INFO n'est pas suffisant, utilisez DEBUG

69voto

Sander S. Points 61

Pour moi, une bonne configuration de journalisation à ajouter était:

log4j.logger.org.springframework.transaction.interceptor = trace

Il va me montrer le journal comme ça:

2012-08-22 18: 50: 00,031 TRACE - Obtention de transaction pour [com.MyClass.myMethod]

[Mes propres instructions de journal de la méthode com.MyClass.myMethod]

2012-08-22 18: 50: 00,142 TRACE - Finalisation de la transaction pour [com.MyClass.myMethod]

9voto

Pascal Thivent Points 295221

Les informations de journal les plus intéressantes de JtaTransactionManager.java (si cette question concerne toujours les JtaTransactionManager ) sont enregistrées avec une priorité de DEBUG . En supposant que vous ayez un log4j.properties quelque part sur le classpath, je suggérerais donc d’utiliser:

 log4j.logger.org.springframework.transaction=DEBUG
 

8voto

Pep Points 21

Vous pouvez également activer la journalisation JDBC:

 log4j.logger.org.springframework.jdbc=DEBUG
 

6voto

Michel Kogan Points 1970

Comme vous pouvez accéder aux classes Spring au moment de l'exécution, vous pouvez déterminer le statut de la transaction ... Cela peut vous aider: http://java.dzone.com/articles/monitoring-declarative-transac?page=0,1

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X