Winston - очень популярный npm-модуль, используемый для регистрации.
Вот инструкции.
Установите winston в свой проект как:
npm install winston --save
Вот готовая к использованию конфигурация, которую я часто использую в своих проектах в качестве logger.js в разделе utils.
/**
* Configurations of logger.
*/
const winston = require('winston');
const winstonRotator = require('winston-daily-rotate-file');
const consoleConfig = [
new winston.transports.Console({
'colorize': true
})
];
const createLogger = new winston.Logger({
'transports': consoleConfig
});
const successLogger = createLogger;
successLogger.add(winstonRotator, {
'name': 'access-file',
'level': 'info',
'filename': './logs/access.log',
'json': false,
'datePattern': 'yyyy-MM-dd-',
'prepend': true
});
const errorLogger = createLogger;
errorLogger.add(winstonRotator, {
'name': 'error-file',
'level': 'error',
'filename': './logs/error.log',
'json': false,
'datePattern': 'yyyy-MM-dd-',
'prepend': true
});
module.exports = {
'successlog': successLogger,
'errorlog': errorLogger
};
А затем просто импортируйте туда, куда требуется:
const errorLog = require('../util/logger').errorlog;
const successlog = require('../util/logger').successlog;
Тогда вы можете зарегистрировать успех как:
successlog.info(`Success Message and variables: ${variable}`);
и ошибки как:
errorlog.error(`Error Message : ${error}`);
Он также регистрирует все журналы успеха и журналы ошибок в файле в каталоге журналов по дате, как вы можете видеть здесь.
![log direcotry](https://i.stack.imgur.com/BCAIU.png)