admin管理员组文章数量:1333706
If there's a custom Transaction Manager extending JpaTransactionManager, it seems impossible to suppress the DEBUG messages from these two classes.
**.springframework.transaction.support.AbstractPlatformTransactionManager
.springframework.orm.jpa.JpaTransactionManager**
Logback invokes the parent's logging by default for every registered child but it's possible to disable it with usual configuration. Not with these two Spring classes, however.
2024-11-20 10:29:26,311 DEBUG [http-nio-80-exec-5] o.s.o.j.JpaTransactionManager: Opened new EntityManager [SessionImpl(1432231711<open>)] for JPA transaction
2024-11-20 10:29:26,311 DEBUG [http-nio-80-exec-9] o.s.o.j.JpaTransactionManager: Exposing JPA transaction as JDBC [.springframework.orm.jpa.vendor.HibernateJpaDialect$HibernateConnectionHandle@7bf2a646]
...
2024-11-20 10:29:26,312 DEBUG [http-nio-80-exec-8] o.s.o.j.JpaTransactionManager: Found thread-bound EntityManager [SessionImpl(632462581<open>)] for JPA transaction
2024-11-20 10:29:26,312 DEBUG [http-nio-80-exec-9] o.s.o.j.JpaTransactionManager: Found thread-bound EntityManager [SessionImpl(269177489<open>)] for JPA transaction
2024-11-20 10:29:26,312 DEBUG [http-nio-80-exec-8] o.s.t.s.AbstractPlatformTransactionManager: Participating in existing transaction
...
2024-11-20 10:29:26,318 DEBUG [http-nio-80-exec-9] o.s.t.s.AbstractPlatformTransactionManager: Initiating transaction commit
2024-11-20 10:29:26,318 DEBUG [http-nio-80-exec-8] o.s.o.j.JpaTransactionManager: Committing JPA transaction on EntityManager [SessionImpl(632462581<open>)]
2024-11-20 10:29:26,318 DEBUG [http-nio-80-exec-9] o.s.o.j.JpaTransactionManager: Committing JPA transaction on EntityManager [SessionImpl(269177489<open>)]
2024-11-20 10:29:26,319 DEBUG [http-nio-80-exec-8] o.s.o.j.JpaTransactionManager: Closing JPA EntityManager [SessionImpl(632462581<open>)] after transaction
2024-11-20 10:29:26,319 DEBUG [http-nio-80-exec-9] o.s.o.j.JpaTransactionManager: Closing JPA EntityManager [SessionImpl(269177489<open>)] after transaction
The Transaction Manager is defined like this. Even if it doesn't have any logging code inside, the above messages trickle through anyway.
package my.package;
public class MyTransactionManager extends JpaTransactionManager {
...
Log level is DEBUG for "my.package". This is important. If the level goes above to INFO, it shuts up Spring JPA messages. Nothing else does, unfortunately.
<logger name="**my.package**" level="debug" additivity="false">
<appender-ref ref="RollingFile" />
<appender-ref ref="Console" />
</logger>
Tried various Logback tricks with filters and No-op appenders to no avail.
<appender name="DENY_ALL" class="ch.qos.logback.core.ConsoleAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>OFF</level>
</filter>
</appender>
<appender name="NOOP" class="ch.qos.logback.core.helpers.NOPAppender"/>
<logger name=".springframework" level="OFF"/>
<logger name=".springframework.orm.jpa.JpaTransactionManager" level="OFF" additivity="false"/>
<logger name=".springframework.transaction.support.AbstractPlatformTransactionManager" level="OFF" additivity="false"/>
<logger name="my.package.MyTransactionManager" level="OFF"/>
<logger name=".springframework.transaction.support.AbstractPlatformTransactionManager" level="OFF" additivity="false">
<appender-ref ref="DENY_ALL"/>
</logger>
<logger name=".springframework.transaction.support.AbstractPlatformTransactionManager" level="OFF" additivity="false">
<appender-ref ref="NOOP"/>
</logger>
<logger name=".springframework" level="OFF" additivity="false">
<appender-ref ref="DENY_ALL"/>
</logger>
<root level="info">
<appender-ref ref="DENY_ALL"/>
</root>
Any thoughts how to get rid of this spam?
本文标签:
版权声明:本文标题:java - Disable Spring JPA Logback DEBUG messages for JpaTransactionManager and AbstractPlatformTransactionManager - Stack Overfl 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1742355757a2459375.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论