Skip to content

Commit

Permalink
[BE] 로그 뽑기 (#649)
Browse files Browse the repository at this point in the history
* refactor: todo patch시 pair_room_id 사라지는 문제 해결

* fix: jwt NPE 핸들링

* fix: Sgin in NPE 핸들링

* fix: alllow header에 content tpye 추가

* fix: Timer update 테스트 오류 수정

* chore: 로그 심기

* fix: preflight 옵션 filter 제외

* chore: 로그 뽑기

---------

Co-authored-by: reddevilmidzy <[email protected]>
Co-authored-by: Redddy <[email protected]>
  • Loading branch information
3 people authored Sep 26, 2024
1 parent 005591c commit 5791715
Show file tree
Hide file tree
Showing 10 changed files with 1 addition and 37 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public FilterRegistrationBean<AccessTokenSessionFilter> accessTokenSessionFilter
public FilterRegistrationBean<SignInCookieFilter> signInCookieFilter(final JwtProvider jwtProvider) {
final FilterRegistrationBean<SignInCookieFilter> bean = new FilterRegistrationBean<>();
bean.setFilter(new SignInCookieFilter(jwtProvider));
bean.addUrlPatterns("/api/sign-out", "/api/member");
bean.addUrlPatterns("/api/sign-out", "/api/member", "/api/sign-in/check");
bean.setOrder(1);
return bean;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ public void addCorsMappings(final CorsRegistry registry) {
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS", "PATCH", "HEAD")
.allowedOrigins("http://localhost:3000", "https://coduo.site", "https://test.coduo.site",
"https://api-test.coduo.site", "https://api.coduo.site")
.allowedHeaders("Content-Type")
.allowCredentials(true);
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package site.coduo.common.config.filter;

import java.io.IOException;
import java.util.Enumeration;
import java.util.Objects;

import jakarta.servlet.FilterChain;
Expand Down Expand Up @@ -34,15 +33,7 @@ public void doFilter(final ServletRequest request, final ServletResponse respons

@Override
public String getStoreSession(final HttpServletRequest request) {
log.info("getSession Store 호출");
log.info("HttpRequest : {}", request);
final HttpSession session = request.getSession();
session.setAttribute("name", "password");
final Enumeration<String> attributeNames = session.getAttributeNames();
while (attributeNames.hasMoreElements()) {
final String name = attributeNames.nextElement();
log.info("{} : {}", name, session.getAttribute(name));
}
final String sessionState = (String) session.getAttribute(ACCESS_TOKEN_SESSION_NAME);
if (Objects.isNull(sessionState)) {
throw new AuthenticationException("세션에서 Access token의 정보를 찾을 수 없습니다.");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ public void doFilter(final ServletRequest request, final ServletResponse respons
public String getStoreSession(final HttpServletRequest request) {
final HttpSession session = request.getSession();
final String sessionState = (String) session.getAttribute(STATE_SESSION_NAME);
log.info("session 담아온 것 : {}", sessionState);
if (Objects.isNull(sessionState)) {
throw new AuthenticationException("세션에서 state 정보를 찾을 수 없습니다.");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ public GithubApiClient() {

public GithubUserResponse getUser(final GithubUserRequest request) {

log.info("Github User 정보 요청 시작 ");
return client.get()
.uri("/user")
.accept()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,7 @@ public class MemberService {
public void createMember(final String username, final String accessToken) {
final Bearer bearer = new Bearer(accessToken);
final GithubUserResponse userResponse = githubClient.getUser(new GithubUserRequest(bearer));
log.info("사용자 정보 불러오기 종료");
final Member member = userResponse.toDomain(bearer, username);
log.info("사용자 정보 DB 반영 완료");
memberRepository.save(member);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,8 @@ public class SseController implements SseDocs {

@GetMapping("/{key}/connect")
public ResponseEntity<SseEmitter> createConnection(@PathVariable("key") final String key) {
log.info("[Connect] 1. SSE 커넥션 연결 시작");
final SseEmitter sseEmitter = sseService.connect(key);

log.info("[Connect] 7. SSE API 종료");
return ResponseEntity.ok(sseEmitter);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,22 +29,15 @@ public class SchedulerService {
private final SseService sseService;

public void start(final String key) {
log.info("[Timer] 2. 타이머 시작 메시지 전송.");
sseService.broadcast(key, "timer", "start");
if (isInitial(key)) {
log.info("[Timer] 2-1. 타이머가 한 번도 시작되지 않음.");
log.info("[Timer] 2-2. DB에서 타이머 가저옴");
final Timer timer = timerRepository.fetchTimerByAccessCode(key)
.toDomain();
log.info("[Timer] 2-3. 스케줄링 시작");
scheduling(key, timer);
log.info("[Timer] 7. register() 시작!!!!!");
timestampRegistry.register(key, timer);
return;
}
log.info("[Timer] 8. 타이머를 시작한 사람이 이미 존재한다.");
final Timer timer = timestampRegistry.get(key);
log.info("[Timer] 8-1. 스케줄링을 시작한다.");
scheduling(key, timer);
}

Expand All @@ -53,17 +46,13 @@ private boolean isInitial(final String key) {
}

private void scheduling(final String key, final Timer timer) {
log.info("[Timer] 3. 시간 전송 시작!");
final Trigger trigger = new PeriodicTrigger(DELAY_SECOND);
final ScheduledFuture<?> schedule = taskScheduler.schedule(() -> runTimer(key, timer), trigger);
schedulerRegistry.register(key, schedule);
log.info("[Timer] 6. 스케줄링 끝!!");
}

private void runTimer(final String key, final Timer timer) {
log.info("[Timer] 4. 1초씩 전송!!");
if (timer.isTimeUp()) {
log.info("[Timer] 4-1. 타이머 끝!!");
stop(key);
final Timer initalTimer = new Timer(timer.getAccessCode(), timer.getDuration(), timer.getDuration());
timestampRegistry.register(key, initalTimer);
Expand All @@ -75,7 +64,6 @@ private void runTimer(final String key, final Timer timer) {
}
timer.decreaseRemainingTime(DELAY_SECOND.toMillis());
sseService.broadcast(key, "remaining-time", String.valueOf(timer.getRemainingTime()));
log.info("[Timer] 5. 타이머 끝!!, 남은 시간 : {}", timer.getRemainingTime());
}

public void pause(final String key) {
Expand Down
6 changes: 0 additions & 6 deletions backend/src/main/java/site/coduo/sync/service/SseService.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,11 @@ public class SseService {
private final SchedulerRegistry schedulerRegistry;

public SseEmitter connect(final String key) {
log.info("[Connect] 2. connect() service 메서드 시작");
log.info("[Connect] 3. 커넥션 생성 및 보관");
final SseEmitter emitter = eventStreamsRegistry.register(key);
log.info("[Connect] 4. 타이머 남은 시간 조회");
final long remainingTime = timerService.readTimerRemainingTime(key);
// todo: SchedulerService 분리된 상수화 어떻게 할지 생각
log.info("[Connect] 5. 남은 시간 메세지 전송");
broadcast(key, "remaining-time", String.valueOf(remainingTime));
log.info("[Connect] 6. 타이머 진행 확인");
if (schedulerRegistry.isActive(key)) {
log.info("[Connect] 6-1. 타이머 진행중임");
broadcast(key, "timer", "running");
}
return emitter;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,7 @@ public class TimerController implements TimerDocs {

@PatchMapping("/{accessCode}/timer/start")
public ResponseEntity<Void> createTimerStart(@PathVariable("accessCode") final String accessCode) {
log.info("[Timer] 1. 타이머 시작!");
schedulerService.start(accessCode);
log.info("[Timer] 9. 스케줄링 API 전체 종료");
return ResponseEntity.noContent()
.build();
}
Expand Down

0 comments on commit 5791715

Please sign in to comment.