阅读量:197
在 Node.js 中,可以使用第三方库 winston 或 morgan 来自定义日志输出格式。这里以 winston 为例,介绍如何自定义日志输出格式。
首先,确保已经安装了 winston:
npm install winston
创建一个名为 logger.js 的文件,并在其中设置自定义日志格式:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.combine(
winston.format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss'
}),
winston.format.printf(({ timestamp, level, message }) => {
return `[${timestamp}] ${level.toUpperCase()}: ${message}`;
})
),
transports: [
new winston.transports.Console(),
new winston.transports.File({ filename: 'logs/error.log', level: 'error' }),
new winston.transports.File({ filename: 'logs/combined.log' })
]
});
module.exports = logger;
在这个例子中,我们使用了 winston.format.combine 方法来组合多个格式化选项。我们设置了时间戳格式,并使用 winston.format.printf 方法自定义了日志的输出格式。
在你的应用程序中使用自定义的日志记录器:
const logger = require('./logger');
logger.info('Hello, world!');
logger.error('An error occurred');
运行你的应用程序,你会看到自定义格式的日志输出。
这只是一个简单的例子,winston 提供了许多其他格式化选项,你可以根据需要进行调整。更多关于 winston 的信息和示例,请参考官方文档: