Я настроил spring.jpa.show-sql: true
поэтому журналы консоли выглядят так:
2024-04-20 16:02:01.031 | http-nio-9001-exec-1 | INFO | org.springframework.web.servlet.DispatcherServlet | | Initializing Servlet 'dispatcherServlet'
2024-04-20 16:02:01.032 | http-nio-9001-exec-1 | INFO | org.springframework.web.servlet.DispatcherServlet | | Completed initialization in 1 ms
Hibernate:
select
nextval('id_account_seq')
Hibernate:
select
nextval('id_passenger_seq')
Hibernate:
insert
into
account
(creation_date, date_of_birth, email, first_name, last_name, fk_nationality, phone_number, id_account)
values
(?, ?, ?, ?, ?, ?, ?, ?)
Hibernate:
insert
into
passenger
(fk_account, date_of_birth, email, first_name, is_primary, last_name, fk_nationality, phone_number, id_passenger)
values
(?, ?, ?, ?, ?, ?, ?, ?, ?)
Как настроить журналы, сгенерированные spring.jpa.show-sql: true (те, которые начинаются с Hibernate:), чтобы использовать тот же шаблон, что и первые два журнала, которые используют следующую конфигурацию yaml для log4j2:
Configuration:
status: warn
Appenders:
Console:
name: CONSOLE
target: SYSTEM_OUT
PatternLayout:
Pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} | %t | %-5level| %logger{25} | %mdc{id}{12} | %msg%n"
Loggers:
Root:
level: INFO
AppenderRef:
- ref: CONSOLE




Хотя это чрезвычайно просто, не рекомендуется использовать spring.jpa.show-sql: true вне тестового сценария, поскольку он напрямую выгружает все на стандартный вывод без какой-либо оптимизации структуры журналирования.
Более того, он не записывает параметры подготовленных операторов.
Вам следует настроить логгеры в файле свойств:
Спящий режим 6:
logging.level.org.hibernate.SQL=DEBUG
logging.level.org.hibernate.orm.jdbc.bind=СЛЕД
Спящий режим 5:
logging.level.org.hibernate.SQL=ОТЛАДКА logging.level.org.hibernate.type.descriptor.sql=TRACE
В первой строке регистрируются SQL-запросы, а во второй — подготовленные параметры инструкции.
При установке этих свойств журналы будут отправляться в настроенное приложение.
Источник: https://vladmihalcea.com/the-best-way-to-log-jdbc-statements/