Files
RSSHub/lib/utils/logger.js
Sukka d82847f541 style/chore(eslint): enforce new rules (#8040)
* style: prefer object shorthand syntax
* refactor: prefer Array#map over Array#forEach
* style: prefer arrow callback
* chore(eslint): update rules
* style: auto fix by eslint
2021-08-17 22:23:23 +08:00

35 lines
945 B
JavaScript

const { resolve } = require('path');
const winston = require('winston');
const config = require('@/config').value;
let transports = [];
if (!config.noLogfiles) {
transports = [
new winston.transports.File({
filename: resolve('logs/error.log'),
level: 'error',
}),
new winston.transports.File({ filename: resolve('logs/combined.log') }),
];
}
const logger = winston.createLogger({
level: config.loggerLevel,
format: winston.format.json(),
transports,
});
//
// If we're not in production then log to the `console` with the format:
// `${info.level}: ${info.message} JSON.stringify({ ...rest }) `
//
if (!config.isPackage) {
logger.add(
new winston.transports.Console({
format: winston.format.combine(winston.format.colorize(), winston.format.simple()),
silent: process.env.NODE_ENV === 'test',
})
);
}
module.exports = logger;