Журнал SQL-запросов, выполняемых Spring Batch

Мне удалось зарегистрировать подготовленные операторы, выполненные Spring Batch, используя:

logging.level.org.springframework.jdbc=DEBUG

Но при этом не будут отображаться обычные операторы, передаваемые JdbcCursorItemReader.

Я пробовал добавить:

logging.level.java.sql=DEBUG
logging.level.java.sql.Connection=DEBUG
logging.level.java.sql.Statement=DEBUG
logging.level.java.sql.PreparedStatement=DEBUG
logging.level.java.sql.ResultSet=DEBUG

Но это не помогло.

logging.level.org.springframework.batch = DEBUG?

hovanessyan 29.03.2018 15:07
5
1
3 575
2

Ответы 2

Пакет для JdbcCursorItemReader - org.springframework.batch.item.database.

Соответственно измените свой conf:

logging.level.org.springframework.batch.item.database=DEBUG

Это не сработало. Даже более общий logging.level.org.springframework=DEBUG не показывает неподготовленные операторы.

Angelo Tricarico 29.03.2018 15:34

Если ведение журнала работает для других пакетов, то это неправильная конфигурация пакета. Дважды проверьте это и убедитесь, что вы определяете правильный. Или используйте logging.level.org.springframework = DEBUG и попробуйте найти правильный пакет.

cisk 29.03.2018 15:41

Я установил корень для отладки, но я не вижу журнал SQL, созданный JdbcCursorItemReader

Enrico Giurin 27.08.2020 00:43

Использовать TRACE в качестве уровня ведения журнала

cisk 28.08.2020 14:39

Spring Batch использует JDBC, поэтому добавление приведенной ниже конфигурации в вашу конфигурацию позволяет вести журнал SQL:

logging:
  level
    org.springframework.jdbc.core.JdbcTemplate: debug 

И это пример вывода:

2021-01-19 14:51:37.570 DEBUG 14792 --- [           main] o.s.jdbc.core.JdbcTemplate               : Executing prepared SQL query
2021-01-19 14:51:37.571 DEBUG 14792 --- [           main] o.s.jdbc.core.JdbcTemplate               : Executing prepared SQL statement [SELECT VERSION FROM BATCH_JOB_EXECUTION WHERE JOB_EXECUTION_ID=?]

Другие вопросы по теме