Мне удалось зарегистрировать подготовленные операторы, выполненные 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
Но это не помогло.
Пакет для JdbcCursorItemReader - org.springframework.batch.item.database.
Соответственно измените свой conf:
logging.level.org.springframework.batch.item.database=DEBUG
Это не сработало. Даже более общий logging.level.org.springframework=DEBUG не показывает неподготовленные операторы.
Если ведение журнала работает для других пакетов, то это неправильная конфигурация пакета. Дважды проверьте это и убедитесь, что вы определяете правильный. Или используйте logging.level.org.springframework = DEBUG и попробуйте найти правильный пакет.
Я установил корень для отладки, но я не вижу журнал SQL, созданный JdbcCursorItemReader
Использовать TRACE в качестве уровня ведения журнала
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=?]
logging.level.org.springframework.batch = DEBUG?