如何禁用Spring Batch SQL查询的记录?
它们是从org.springframework.jdbc.core.JdbcTemplate
记录器中记录的,因为:
logging.level:
org.springframework.jdbc: TRACE
看起来像:
2017-05-27 20:41:55.957 DEBUG 13088 --- [jobLauncherTaskExecutor-1] o.s.jdbc.core.JdbcTemplate : Executing prepared SQL update
2017-05-27 20:41:55.957 DEBUG 13088 --- [jobLauncherTaskExecutor-1] o.s.jdbc.core.JdbcTemplate : Executing prepared SQL statement [UPDATE BATCH_JOB_EXECUTION_CONTEXT SET SHORT_CONTEXT = ?, SERIALIZED_CONTEXT = ? WHERE JOB_EXECUTION_ID = ?]
2017-05-27 20:41:55.958 DEBUG 13088 --- [jobLauncherTaskExecutor-1] o.s.jdbc.core.JdbcTemplate : SQL update affected 1 rows
如此大量的这些消息,我无法看到我的应用程序消息(有问题)。
问题是,通过禁用此记录器,我的应用程序SQL查询也将被禁用。
答案 0 :(得分:1)
您尚未指定使用的日志框架。
我在使用logback的Spring Batch应用程序中管理了这个。
我为我的应用程序定义了一个单独的记录器,其余的是默认记录器,然后我可以单独设置两个不同记录器的记录级别。
请参考my slideshare presentation获取有关在logback中定义命名记录器的一些想法。
要解决,
有了这么多的这些消息,我无法看到我的申请 消息
我想,无论你使用什么日志框架,基本的想法是为你的应用程序需要定义一个单独的记录器,并将其余部分引导到默认记录器,然后单独设置级别,即在包级别进行日志记录在这里没有帮助。
accepted answer here中提到的其他解决方案也会禁用查询日志。