winston 01 - Logger

winston은 node.js logging library로 사용하기 편하고 logging 관련하여 강력한 기능들을 제공한다.

이번 포스팅은 winston의 Logger에 대해 알아보도록 하겠다.


Logger는 logging을 수행하는 객체로 아래와 같이 winston.createLogger 함수를 통해 생성할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
const winston = require('winston');

const logger = winston.createLogger({
level: 'info',
format: winston.format.simple(),
transports: [
new winston.transports.Console()
]
});

logger.info('simple log'); // info: simple log

Logger 객체를 생성하기 때문에 여러 객체를 생성하여 Logger를 따로 관리할 수도 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const winston = require('winston');

const logger = winston.createLogger({
level: 'info',
format: winston.format.simple(),
transports: [
new winston.transports.Console()
]
});

logger.info('simple log'); // info: simple log

const jsonLogger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.Console()
]
});

jsonLogger.info('json log'); // {"message":"json log","level":"info"}

위와 같이 여러 Logger 객체를 필요에 맞게 생성하여 사용할 수 있다.

Share