mirror of
https://github.com/aurora-dot/pastel.codes.git
synced 2024-11-25 17:42:21 +00:00
41 lines
1.1 KiB
JavaScript
41 lines
1.1 KiB
JavaScript
var appRoot = require('app-root-path');
|
|
var winston = require('winston');
|
|
|
|
// define the custom settings for each transport (file, console)
|
|
var options = {
|
|
file: {
|
|
level: 'info',
|
|
filename: `${appRoot}/logs/app.log`,
|
|
handleExceptions: true,
|
|
json: true,
|
|
maxsize: 5242880, // 5MB
|
|
maxFiles: 5,
|
|
colorize: false,
|
|
},
|
|
console: {
|
|
level: 'debug',
|
|
handleExceptions: true,
|
|
json: false,
|
|
colorize: true,
|
|
},
|
|
};
|
|
|
|
// instantiate a new Winston Logger with the settings defined above
|
|
let logger = winston.createLogger({
|
|
transports: [
|
|
new (winston.transports.Console)(options.console),
|
|
new (winston.transports.File)(options.errorFile),
|
|
new (winston.transports.File)(options.file)
|
|
],
|
|
exitOnError: false, // do not exit on handled exceptions
|
|
});
|
|
|
|
// create a stream object with a 'write' function that will be used by `morgan`
|
|
logger.stream = {
|
|
write: function(message, encoding) {
|
|
// use the 'info' log level so the output will be picked up by both transports (file and console)
|
|
logger.info(message);
|
|
},
|
|
};
|
|
|
|
module.exports = logger; |