Skip to content

Commit 6e15bba

Browse files
committed
CLAP-196 Fix: 요청 실패 시 설명 구체화
1 parent 3e77e7a commit 6e15bba

File tree

7 files changed

+15
-13
lines changed

7 files changed

+15
-13
lines changed

src/main/java/clap/server/application/port/inbound/log/CreateAnonymousLogsUsecase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@
77
import java.time.LocalDateTime;
88

99
public interface CreateAnonymousLogsUsecase {
10-
void createAnonymousLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName);
10+
void createAnonymousLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName);
1111

1212
}

src/main/java/clap/server/application/port/inbound/log/CreateMemberLogsUsecase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@
88

99
public interface CreateMemberLogsUsecase {
1010

11-
void createMemberLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, Long userId);
11+
void createMemberLog(HttpServletRequest request, int statusCode,String customCode, LogStatus logStatus, Object responseBody, String requestBody, Long userId);
1212
}

src/main/java/clap/server/application/service/log/CreateAnonymousLogsService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ public class CreateAnonymousLogsService implements CreateAnonymousLogsUsecase {
1818
private final ApiLogPersistenceAdapter apiLogPersistenceAdapter;
1919

2020
@Override
21-
public void createAnonymousLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName) {
22-
AnonymousLog anonymousLog = AnonymousLog.createAnonymousLog(request, statusCode, logStatus, responseBody, requestBody, nickName);
21+
public void createAnonymousLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName) {
22+
AnonymousLog anonymousLog = AnonymousLog.createAnonymousLog(request, statusCode,customCode, logStatus, responseBody, requestBody, nickName);
2323
apiLogPersistenceAdapter.saveAnonymousLog(anonymousLog);
2424
}
2525
}

src/main/java/clap/server/application/service/log/CreateMemberLogsService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ public class CreateMemberLogsService implements CreateMemberLogsUsecase {
2323

2424
@Override
2525
@Transactional
26-
public void createMemberLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, Long userId) {
26+
public void createMemberLog(HttpServletRequest request, int statusCode, String customCode,LogStatus logStatus, Object responseBody, String requestBody, Long userId) {
2727
Member member = memberService.findById(userId);
28-
MemberLog memberLog = MemberLog.createMemberLog(request, statusCode, logStatus, responseBody, requestBody, member);
28+
MemberLog memberLog = MemberLog.createMemberLog(request, statusCode, customCode, logStatus, responseBody, requestBody, member);
2929
apiLogPersistenceAdapter.saveMemberLog(memberLog);
3030
}
3131
}

src/main/java/clap/server/config/aop/LoggingAspect.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,11 @@ public Object logApiRequests(ProceedingJoinPoint joinPoint) throws Throwable {
6262
} finally {
6363
LogStatus logStatus = getLogType((MethodSignature) joinPoint.getSignature());
6464
int statusCode;
65+
String customCode = null;
6566
if (capturedException != null) {
6667
if (capturedException instanceof BaseException e) {
6768
statusCode = e.getCode().getHttpStatus().value();
69+
customCode = e.getCode().getCustomCode();
6870
} else {
6971
ModelAndView modelAndView = handlerExceptionResolver.resolveException(request, response, null, capturedException);
7072
statusCode = modelAndView.getStatus().value();
@@ -75,14 +77,14 @@ public Object logApiRequests(ProceedingJoinPoint joinPoint) throws Throwable {
7577

7678
if (logStatus != null) {
7779
if (LogStatus.LOGIN.equals(logStatus)) {
78-
createAnonymousLogsUsecase.createAnonymousLog(request, statusCode, logStatus, result, getRequestBody(request), getNicknameFromRequestBody(request));
80+
createAnonymousLogsUsecase.createAnonymousLog(request, statusCode, customCode, logStatus, result, getRequestBody(request), getNicknameFromRequestBody(request));
7981
} else {
8082
if (!isUserAuthenticated()) {
8183
log.error("로그인 시도 로그를 기록할 수 없음");
8284
} else {
8385
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
8486
if (principal instanceof SecurityUserDetails userDetails) {
85-
createMemberLogsUsecase.createMemberLog(request, statusCode, logStatus, result, getRequestBody(request), userDetails.getUserId());
87+
createMemberLogsUsecase.createMemberLog(request, statusCode, customCode, logStatus, result, getRequestBody(request), userDetails.getUserId());
8688
}
8789
}
8890
}

src/main/java/clap/server/domain/model/log/AnonymousLog.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,13 @@
1616
public class AnonymousLog extends ApiLog {
1717
private String loginNickname;
1818

19-
public static AnonymousLog createAnonymousLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName) {
19+
public static AnonymousLog createAnonymousLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName) {
2020
return AnonymousLog.builder()
2121
.clientIp(ClientIpParseUtil.getClientIp(request))
2222
.requestUrl(request.getRequestURI())
2323
.requestMethod(request.getMethod())
2424
.statusCode(statusCode)
25-
.customStatusCode("")
25+
.customStatusCode(customCode != null ? customCode : "")
2626
.requestBody(requestBody)
2727
.responseBody(responseBody != null ? responseBody.toString() : "로그인 실패")
2828
.requestAt(LocalDateTime.now())

src/main/java/clap/server/domain/model/log/MemberLog.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
public class MemberLog extends ApiLog {
1818
private Member member;
1919

20-
public static MemberLog createMemberLog(HttpServletRequest request, int statusCode, LogStatus logStatus, Object responseBody, String requestBody, Member member) {
20+
public static MemberLog createMemberLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, Object responseBody, String requestBody, Member member) {
2121
return MemberLog.builder()
2222
.clientIp(ClientIpParseUtil.getClientIp(request))
2323
.requestUrl(request.getRequestURI())
2424
.requestMethod(request.getMethod())
2525
.statusCode(statusCode)
26-
.customStatusCode("")
26+
.customStatusCode(customCode != null ? customCode : "")
2727
.requestBody(requestBody)
28-
.responseBody(responseBody != null ? responseBody.toString() : "일반 실패")
28+
.responseBody(responseBody != null ? responseBody.toString() : logStatus.getDescription() + " 실패")
2929
.requestAt(LocalDateTime.now())
3030
.logStatus(logStatus)
3131
.member(member)

0 commit comments

Comments
 (0)