inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Do it! Node.js 프로그래밍(개정판)

05

ch-04-05 강의 winston log 에러

435

kee kim

작성한 질문수 1

1

아래와 같이 코드를 작성하였는데 log 디렉토리까지만 생성되고 안에 로그 파일이 남겨지지 가 않습니다. 계속해서 디렉토리가 없다고 에러만 뜨네요 왜 그런지 한번 봐주실수 있나요...?

npm 은 모두 설치 하였습니다

var winston = require(`winston`);
var winstonDaily = require(`winston-daily-rotate-file`);
var moment = require(`moment`);

function timeStampFormat() {
    return moment().format(`YYYY-MM-DD HH:mm:ss.SSS ZZ`);
}

var logger = new (winston.Logger)({
    transports: [
        new (winstonDaily)({
            name:'info-file',
            filename:'./log/server',
            datePattern:'_yyyy-MM-dd.log',
            colorize:false,
            maxsize:50000000,
            maxFiles:1000,
            level:'info',
            showLevel:true,
            json:false,
            timestamp:timeStampFormat
        }),
        new (winston.transports.Console)({
            name:'debug-console',
            colorize:'true',
            level:'debug',
            showLevel:'true',
            json:false,
            timestamp:timeStampFormat 
        })
    ]
});

logger.debug(`디버그 메시지 입니다`);
logger.error(`에러 메시지 입니다`);

nodejs

답변 1

3

이태선

winston이나 winston-daily-rotate-file모두 리뉴얼이 많이 되어서 사용법이 바뀐 것 같습니다. 해당 강의는 작성된지 몇년 되었구요. 따라서 npm으로 사용하는 몇몇 모듈의 경우, 제대로 동작하지 않는 경우, 해당 모듈을 구글에 검색해서 사용법에 대해 읽어보시는 편이 좋을 것 같습니다. 현재 기준으로는 아래와 같이 사용하시면 될것 같습니다.

let logger = winston.createLogger({
    // level: 'info',
    // format: /* winston.format.json(), */ false,
    // defaultMeta: { service: 'user-service' },
    transports: [
        // log file에 저장할 deg message 설정 세팅
        new (winstonDaily)({ // file에 뿌려주는거
            name: 'info-file',
            filename: './log/server_%DATE%.log',
            datePattern: 'yyyy-MM-DD',
            colorize: false,
            maxSize: 50000000,
            maxFiles: 1000,
            level: 'info',
            showLevel: true,
            json: false,
            timeStampFormattimeStampFormat,
        }),
        // console창에 보여줄 deg message 설정 세팅
        new (winston.transports.Console)({ //console에 뿌려주는거
            name: 'debug-console',
            colorize: true,
            level: 'debug',
            showLevel: true,
            json: false,
            timeStampFormattimeStampFormat
        })
    ]
});

장고와 nodejs에 대해 근본적인 의문이 생겼습니다

0

1510

1

나만의미니프로젝트 cheerio관련질문

0

520

1

새일기를 쓰면 한개가 아닌 두개가 등록이 됩니다ㅠ

0

646

1

몽구스 버전 관련 문의

0

1524

1

tfjs-node 안깔려서

0

1097

1

mongoose save() 어쩌구 에러나시는 분들

13

1609

5

route에서 res.status(201).json시 undefined

0

485

1

배포 강의를 시작하시는 분들은 인스턴스 환경변수 분리까지 보신 후에 하시면 좋을 것 같습니다.

2

564

0

writeHead 부분

0

468

1

const config = require('../config/config')[env];를 es모듈로 불러오는 방법

2

678

1

useSelector의 적절한 사용법에 대해 궁금합니다.

1

895

1

userRepositorySpySave 왜 ? 0 이 안나와? 는 보십시오.

1

393

1

1:1 관계 등록 API 강의 creatProduct 시 에러가 발생합니다

0

434

1

로그인페이지, 회원가입페이지 못들어가게하는 부분

0

518

1

강의에서 사용하고 있는 next.js 버전으로 설치는 어떻게 하나요?

0

2344

1

flyctl 관련 재문의 드립니다.

0

592

1

Section Quiz7 에서 질문이 있습니다.

0

505

2

flyctl 배포 관련 에러 문의드립니다.

0

749

1

왜 this를 썻는지...

0

220

0

갑자기 process 객체가?

0

214

0

'새파일 만들기'를 눌렀는데 '대상 디렉토리를 변경 할수 없다'고 자꾸 나오네요.

0

379

0

mongodb 4.3.1 db is not defined에러 문제

0

554

0

ch01에 01강의중 console오류 질문드립니다.

0

187

0

11강의 첫번째가 잘못 올라온 것 같습니다.

0

192

0