목적
외부 API 호출 시 timeout 누락으로 인한 스레드 무한 대기 방지, 그리고 운영 환경에서 Cloud Logging 기반 필드 검색이 가능하도록 구조화 로그를 보완합니다.
작업 내용
timeout 추가
SsoService — Google/Kakao/Naver 토큰 교환 및 유저정보 조회 4곳 10s
PaymentService — PortOne 결제 조회 15s
구조화 로그 보완
logback-spring.xml — prod JSON 인코더 적용, default 프로필 fallback 추가, springProfile AND 조건 수정
MdcLoggingFilter — 요청 완료 시 access log 추가 (httpStatus, durationMs MDC 필드화)
GlobalExceptionHandler — 모든 핸들러에 errorCode MDC 통일 (기존 CustomException에만 적용되던 것을 전체 핸들러로 확대)
JwtAuthenticationFilter — 조기 리턴 경로에서 userId MDC 누락 제거
application.yml — logback-spring.xml과 중복되는 dead config(logging.pattern.console) 제거
영향 범위
global/filter — MdcLoggingFilter, JwtAuthenticationFilter
global/exception — GlobalExceptionHandler
auth/service — SsoService
payment/service — PaymentService
resources — logback-spring.xml, application.yml
완료 조건
관련 이슈 / 참고
목적
작업 내용
timeout 추가
SsoService— Google/Kakao/Naver 토큰 교환 및 유저정보 조회 4곳 10sPaymentService— PortOne 결제 조회 15s구조화 로그 보완
logback-spring.xml— prod JSON 인코더 적용, default 프로필 fallback 추가, springProfile AND 조건 수정MdcLoggingFilter— 요청 완료 시 access log 추가 (httpStatus,durationMsMDC 필드화)GlobalExceptionHandler— 모든 핸들러에errorCodeMDC 통일 (기존 CustomException에만 적용되던 것을 전체 핸들러로 확대)JwtAuthenticationFilter— 조기 리턴 경로에서userIdMDC 누락 제거application.yml— logback-spring.xml과 중복되는 dead config(logging.pattern.console) 제거영향 범위
global/filter— MdcLoggingFilter, JwtAuthenticationFilterglobal/exception— GlobalExceptionHandlerauth/service— SsoServicepayment/service— PaymentServiceresources— logback-spring.xml, application.yml완료 조건
관련 이슈 / 참고