일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AWS RDS
- java
- 자바
- AWS
- aop
- CleanCode
- 알고리즘분석
- 인프런김영한
- 자바예외
- jpa
- 자료구조
- 인덱스
- DDD
- 스프링부트와AWS로혼자구현하는웹서비스
- mysql
- 이펙티브자바
- 도메인 주도 개발 시작하기
- MariaDB
- 인프런백기선
- 알고리즘
- react
- 이펙티브 자바
- 혼공SQL
- SQL쿡북
- 이팩티브 자바
- 네트워크
- 자바스터디
- 클린코드
- vue.js
- 기술면접
- Today
- Total
목록SpringBoot (10)
기록이 힘이다.
TraceId 클래스 로그 추적기는 트랜잭션ID와 깊이를 표현하는 방법이 필요하다. 여기서는 트랜잭션ID와 깊이를 표현하는 level을 묶어서 'TraceId'라는 개념을 만들었다. TraceId는 단순히 id(트랜잭션ID)와 level 정보를 함께 가지고 있다. package hello.advenced.trace.hellotrace; import hello.advenced.trace.TraceStatus; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; class HelloTraceV1Test { @Test void begin_end() { HelloTraceV1 trace = new HelloTra..
애플리케이션이 커지면서 점점 모니터링과 운영이 중요해지는 단계이다. 기존에는 개발자가 문제가 발생한 다음에 관련 부분을 어렵게 찾아서 로그를 하나하나 직접 만들어 남겼다. 로그를 미리 남겨 둔다면 이런 부분을 손쉽게 찾을 수 있을 것이다. 이 부분을 개선하고 자동화하는 것이 여러분의 미션이다. -모든 public 메서드의 호출과 응답 정보를 로그로 출력 -애플리케이션의 흐름을 변경하면 안됨 - 로그를 남긴다고 해서 비즈니스 로직의 동작에 영향을 주면 안됨 -메서드 호출에 걸린 시간 -정상 흐름과 예외 흐름 구분 - 예외 발생시 예외 정보가 남아야 함 -메서드 호출의 깊이 표현 -HTTP 요청을 구분 - HTTP 요청 단위로 특정 ID를 남겨서 어떤 HTTP 요청에서 시작된 것인지 명확하게 구분이 가능해야..