• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

로그 파라미터에 관한 질문입니다

23.01.27 16:01 작성 23.01.27 16:18 수정 조회수 537

2

 

파라미터가 masked 로 가려져 보이는데 정확하게 파라미터가 넘어오는지 확인을 해보고 싶습니다.
그래서 스프링부트 공식문서에 설정관련 페이지를 보고 있는데 잘 찾아지지가 않아 질문드립니다. 검색할 키워드를 알 수 있을까요?

spring.mvc.log-request-details=true

찾아보던 중 위 설정을 적어주면 파라미터가 제대로 보인다고 하는데 이것도 적용이 되질 않습니다ㅠㅠ

답변 1

답변을 작성해보세요.

2

로그의 URL을 봐서는 아직 스프링부트로 전환을 하기 전인 듯하네요.

최종적으로 스프링부트 방식의 자동구성을 사용하도록 전환하기 전에는 spring.mvc로 시작하는 프로퍼티를 받는 자동 구성이 적용이 되지 않습니다. 따라서 DispatcherServlet에 세밀한 설정이 불가능해요.

그래서 spring.mvc.log-request-details=true가 적용이 안 되는게 정상입니다.

이걸 스프링 부트의 DispatcherServletAutoConfiguration이 사용되어져서 DispatcherServlet을 직접 만들게 되야 동작하는데 그 원리에 대해선 후반부에서 쭉 설명합니다.

최종 단계에서 스프링 부트로 전환한 후에 이 파라미터를 적용하시면 다음과 같이 잘 동작할 겁니다.

GET "/app/hello?name=Spring", parameters={name:[Spring]}

그래도 꼭 중간 단계에서 보고 싶으시다면 DispatcherServlet을 만드는 @Bean 메소드를 찾으셔서
dispatcherServlet.setEnableLoggingRequestDetails(true);
를 중간에 추가해보세요.

image

넵 토비님 말씀대로 설정을 추가해서 로그를 확인해 보았습니다

image

드디어 제가 확인해보고 싶었던 파라미터가 마스킹 되지 않고 보이는 것을 확인했습니다.

너무 속시원합니다. 감사합니다
강의 너무 재밌어요 ㅎㅎㅎㅎ