-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathLogService.java
More file actions
43 lines (38 loc) · 2.38 KB
/
LogService.java
File metadata and controls
43 lines (38 loc) · 2.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package clap.server.application.service.log;
import clap.server.adapter.outbound.persistense.entity.log.constant.LogStatus;
import clap.server.application.port.inbound.domain.MemberService;
import clap.server.application.port.outbound.auth.loginLog.LoadLoginLogPort;
import clap.server.application.port.outbound.log.CommandLogPort;
import clap.server.application.port.outbound.log.LoggingPort;
import clap.server.common.utils.ClientIpParseUtil;
import clap.server.domain.model.auth.LoginLog;
import clap.server.domain.model.log.AnonymousLog;
import clap.server.domain.model.log.MemberLog;
import clap.server.domain.model.member.Member;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@Service
@RequiredArgsConstructor
@Transactional
public class LogService implements LoggingPort {
private final CommandLogPort commandLogPort;
private final MemberService memberService;
private final LoadLoginLogPort loadLoginLogPort;
public void createAnonymousLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, Object responseBody, String requestBody, String nickName) {
AnonymousLog anonymousLog = AnonymousLog.createAnonymousLog(request, statusCode,customCode, logStatus, responseBody, requestBody, nickName);
commandLogPort.saveAnonymousLog(anonymousLog);
}
public void createMemberLog(HttpServletRequest request, int statusCode, String customCode,LogStatus logStatus, Object responseBody, String requestBody, Long memberId) {
Member member = memberService.findById(memberId);
MemberLog memberLog = MemberLog.createMemberLog(request, statusCode, customCode, logStatus, responseBody, requestBody, member);
commandLogPort.saveMemberLog(memberLog);
}
public void createLoginFailedLog(HttpServletRequest request, int statusCode, String customCode, LogStatus logStatus, String requestBody, String nickName) {
LoginLog loginLog = loadLoginLogPort.findByNickname(nickName).orElse(null);
String responseBody = loginLog != null ? loginLog.toSummaryString() : null;
AnonymousLog anonymousLog = AnonymousLog.createAnonymousLog(request, statusCode,customCode, logStatus, responseBody, requestBody, nickName);
commandLogPort.saveAnonymousLog(anonymousLog);
}
}