Kernel360 / F2-TECHPICK

웹에서 지식을 찾는 사람들을 위한 링크 관리 유틸리티
4 stars 3 forks source link

[FEAT] 에러 요청에 대한 로깅 구현 #481

Closed Gyaak closed 3 days ago

Gyaak commented 4 days ago

What is this PR? 🔍

Changes 📝

기존에는 예외에 대해 에러코드와 메세지만 로깅했지만, 이것으로는 디버깅 및 행동분석에 부족하다고 판단되어 예외 발생 시 해당 요청을 로깅하는 기능을 구현

필터를 구현해 모든 요청을 CachedHttpServletRequest에 캐싱하고 CachedHttpServletRequest객체를 ThreadLocal에 저장 이후 예외가 발생하면, 캐싱한 CachedHttpServletRequest를 꺼내와서 요청을 로깅

로깅예시

{
  "requestTime": "2024-11-18T23:19:08.174014",
  "method": "DELETE",
  "requestBody": "{\n이건 잘못된 Json 요청입니다.",
  "requestURI": "/api/folders",
  "cookies": {
    "access_token": "(엑세스토큰 값)",
    "JSESSIONID": "(세션ID)",
    "techPickLogin": "true"
  }
}

Precaution

이것 외에도 실제 예외가 발생했을때의 파라미터를 로깅하는 기능 추가 필요