inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

로깅은 어떻게 하는게 효율적일까요?

222

뱅준

작성한 질문수 27

0

안녕하세요. 몇가지 질문이 있습니다.

 

  1. 저는 NestJS에서 지원하는 @nest/common 패키지의 Logger를 사용해왔는데요. MTTD를 최소화 하기 위해서 다른 사람들은 로깅을 어떻게 하는지 찾아보다 winstonpino 라이브러리를 발견했습니다. 이런 라이브러리들과 NestJS에 내장되어 있는 Logger와는 어떤 차이가 있나요? 커스텀 하는 기능 외에 성능적으로 우위가 있는건가요?

  2. 현업에서는 보통 로그를 어떻게 남기나요? 제로초님은 현업에서 로그 모니터링 도구로 Data DogSentry를 사용하신다고 하셨는데 저는 와탭랩스를 사용해보려고 합니다. 이 때, 로그는 보통 어떤 형식으로 남기시나요?

    제가 계획하고 있는 구조는 미들웨어에서 아래처럼 남겨주고, 에러가 발생하면 ExceptionFilter에서 한번 더 위의 형식에 에러 메시지를 포함해서 로그를 남겨주려고 합니다.

LOG [HTTP] [DateTime] [method] [statusCode] [responseTime] - [url] - [ip] - [userAgent]

제로초님의 로그 구성이 궁금합니다.

감사합니다.

node.js express nestjs typeorm

답변 1

0

제로초(조현영)

저는 로그 형식은 문자열 한줄을 기본으로 하되 한 줄로 표현하기 힘들면 json을 사용하고요. 로그 형식보다는 로그를 자주 남기는게 더 도움이됐습니다.

winston을 사용하는데 콘솔+모니터링 툴로 보낼 로그는 this.logger.log를 쓰고 개발 시에만 쓸 로그는 console.log 그냥 사용합니다. winston이 상황별로 설정이 돼서 좋습니다. 저는 배포시에는 this.logger.log글을 파일로 저장 및 콘솔 출력하고 있고, 개발 시에는 this.logger.log를 콘솔로만 출력하고 있습니다.

저도 에러는 익셉션 필터에서 500번대 에러만 this.logger.error로 로깅하고 있습니다

강의자료는 어디서 다운받나요?

0

110

3

질문 있습니다.

0

294

3

(강의 5:42 질문) providers를 통한 여러 개의 인스턴스 생성 & exports 통한 싱글톤 생성

0

154

2

코드 편집기 확장 프로그램

0

209

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

143

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

166

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

151

2

로그인방법이 고민됩니다.

0

190

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

296

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

242

2

npm run db:create 시에 발생하는 decorating 오류

0

231

2

RxJS 디버깅 질문 있습니다.

0

187

3

CacheManager에 대해 질문 있습니다.

0

173

2

CORS 질문 있습니다.

0

417

2

쿠키 옵션에 대해서 질문 있습니다.

0

184

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

446

1

401 unauthorized문제

0

285

1

가드의 장점에 대해서 질문이 있습니다.

0

225

1

로그 관리에 대해 질문 있습니다.

0

251

2

CORS 에러 질문 있습니다.

0

318

2

배포 환경 DB 연결 질문 있습니다.

0

410

2

socket io 미 연결 문제 (nest & flutter)

1

1151

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

453

1

NextJS와 NestJS 소켓IO 연결

1

1480

1