在Ubuntu系统中,筛选Node.js日志可以通过以下几种方法实现:
app.log
的日志文件,可以运行 tail -f app.log
。app.log
文件的内容,可以运行 cat app.log
。error
的日志行,可以运行 cat app.log | grep "error"
。如果你使用PM2来管理你的Node.js应用,可以使用以下命令来查看日志:
pm2 logs
pm2 logs app_name
pm2 logs --json
pm2 logs app_name --lines 1000
pm2 monit
pm2 start app.js --time 7*24
在生产环境中,建议使用专门的日志库(如Winston、Bunyan或Pino)来记录日志。这些库提供了更多的功能,如日志级别、日志格式化和日志轮转。
例如,使用Winston日志库的简单示例:
const winston = require('winston');
// 创建 logger 实例
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: './logs/error.log', level: 'error' }),
new winston.transports.File({ filename: './logs/combined.log' })
]
});
// 使用 logger
logger.info('Hello World!');
logger.error('This will get logged to error.log');
通过上述方法,可以有效地在Ubuntu系统中筛选和管理Node.js日志,帮助快速定位和解决问题。