在Node.js中,可以使用第三方库winston或morgan来自定义日志格式。这里以winston为例,介绍如何在Ubuntu系统中自定义日志格式。
首先,确保已经安装了Node.js和npm。如果没有,请访问Node.js官网下载并安装。
在项目目录中,使用以下命令安装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.timestamp用于添加时间戳,winston.format.printf用于自定义日志输出格式。
在你的主要应用文件(如app.js)中,引入并使用自定义的logger:
const logger = require('./logger'); logger.info('Hello, world!'); logger.error('An error occurred'); 运行你的应用:
node app.js 你将在控制台和日志文件中看到自定义格式的日志输出。
这只是一个简单的例子,你可以根据需要调整日志级别、格式和传输方式。更多关于winston的信息,请参考官方文档。