강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

Minho Lee님의 프로필 이미지
Minho Lee

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

JPA와 DB 설정, 동작확인

boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)

작성

·

23

·

수정됨

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
여기에 질문 내용을 남겨주세요.

 

  1. 일단 현재 yml 강의 자료 기준으로는 trasaction rolled back에 대한 로그가 찍히질 않는데,


    해당 옵션을 추가해봤습니다.

     

org.springframework.orm.jpa: trace #JPA 트랜잭션 관련 로그

그랬더니 찍히긴 하던데 약간 이상하게? 찍힙니다.

2026-01-07T02:05:57.767+09:00 DEBUG 5469 --- [    Test worker] o.s.orm.jpa.JpaTransactionManager        : Initiating transaction rollback
2026-01-07T02:05:57.767+09:00 DEBUG 5469 --- [    Test worker] o.s.orm.jpa.JpaTransactionManager        : Rolling back JPA transaction on EntityManager [SessionImpl(1610625797<open>)]

혹시나 다른 옵션이 있을까? class가 아니라 SessionImpl? 이렇게 나오네요.

 

  1. 이건 제가 공식 문서를 봐봤는데, 다른분들께 도움이 될까 싶어서요, 나중에 자료도 업데이트 해주시면 좋을 것 같아요!


    https://github.com/gavlyukovskiy/spring-boot-data-source-decorator?tab=readme-ov-file#quick-start
    현재 저는 부트 4 버전을 사용중인데,

    Screenshot 2026-01-07 at 02.09.32.png

     


    4버전 부터는 p6spy를 1.10.0 이 아닌 2.0.0으로 해줘야 합니다!

implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:2.0.0'

현재 자료 기준은 1.10.0이라 수정해 주시면 좋을 것 같습니다!

(그리고 3버전도 1.12.1 로 올라갔습니다!)

 

사실 2번은 질문이라기 보다는 알려드리고 싶은 부분이었고, 1번만 트랜잭션 로그를 다르게 찍는 방법? 이 있는지 궁금합니다.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

Minho Lee님, 스프링 부트에서 트랜잭션 로그와 관련하여 질문 주셔서 감사합니다. 스프링 부트의 최신 버전에서는 트랜잭션 관련 로그의 레벨 또는 출력 형식에서 약간의 변화가 있을 수 있습니다. 이에 대해 아래와 같은 방법으로 설정을 조정할 수 있는지 확인해 보실 수 있습니다.

  1. 트랜잭션 로그 출력 설정:

    • 스프링의 트랜잭션 관련 로그는 주로 org.springframework.transaction에 의해 관리됩니다. 로그의 출력 포맷이나 로그 레벨이 다르게 설정되어 있는지 확인하시고 필요에 따라 조정해 보세요.
    • org.springframework.orm.jpa.JpaTransactionManager 같은 특정 클래스의 로그 레벨을 조정하여 더 풍부한 정보를 얻을 수 있습니다.
  2. p6spy 설정 변경:

    • Spring Boot 4.x에서는 p6spy의 새 버전인 2.0.0을 사용해야 한다고 하셨습니다. 로그를 정확히 출력하기 위해 이 버전에 맞는 설정이 필요하겠습니다. p6spy는 SQL 로그를 저장하고 파일로 기록하거나 어떻게 데이터를 보여줄지를 설정할 수 있습니다.
  3. 추가 설정:

    • application.yml 또는 application.properties에서 로그 레벨을 세부적으로 조정하여 원하는 로그를 볼 수 있도록 설정을 변경해보세요. 아래의 예시는 TRACE 레벨로 로그를 설정하는 방법입니다:
      
      logging:
      level:
       org.springframework.transaction: TRACE
       org.springframework.orm.jpa.JpaTransactionManager: TRACE
      

위 사항들을 기반으로 설정하시어 로그를 좀 더 명확히 보실 수 있기를 바랍니다.

p6spy와 관련한 설정에서는 공식 p6spy 문서를 참조하여 최신 버전에 맞는 설정을 적용하시면 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Minho Lee님의 프로필 이미지
Minho Lee

작성한 질문수

질문하기