인프런 커뮤니티 질문&답변

Aj Paik님의 프로필 이미지
Aj Paik

작성한 질문수

Electron과 NodeJS 그리고 Socket.io를 이용한 채팅 어플리케이션 개발

express Backend

로그 남는 부분 질문하겠습니다~

해결된 질문

작성

·

174

0

app.use(logger('dev'));

로 남는 로그

POST /users 500 241.399 ms - 165

부분에서 length값 부분이 -로 나오는데 이건 어떻게 수정 가능한가요?

답변 1

1

김지운님의 프로필 이미지
김지운
지식공유자

logger로 morgan이라는 모듈을 사용합니다.

 

morgan에는 몇가지 미리 정의된 양식의 로깅 포맷이 있으며 커스텀 토큰을 추가하여 로그 내용을 추가할 수 있습니다.

morgan의 문서는 https://github.com/expressjs/morgan/blob/master/README.md

아래는 morgan문서의 커스텀 토큰 추가 하는 부분으로 application 의 middleware로 assignId 함수를 만들어서 request객체에 id프로퍼티를 세팅하고 morgan(':id')로 로그를 추가하는 샘플코드입니다.

var express = require('express')
var morgan = require('morgan')
var uuid = require('node-uuid')

morgan.token('id', function getId (req) {
  return req.id
})

var app = express()

app.use(assignId)
app.use(morgan(':id :method :url :response-time'))

app.get('/', function (req, res) {
  res.send('hello, world!')
})

function assignId (req, res, next) {
  req.id = uuid.v4()
  next()
}

위와같은 방식이나 morgan이 사용하는데 충분한 기능을 제공하지 않는다면

winston: https://github.com/winstonjs/winston

winston이 좋은 대안일 수 있습니다.

Aj Paik님의 프로필 이미지
Aj Paik

작성한 질문수

질문하기