在Ubuntu系统中,处理Node.js日志中的异常请求通常涉及以下几个步骤:
Error
为前缀,或带有404
、500
等HTTP状态码。npm install winston
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' }),
],
});
try {
// 可能引发异常的代码
} catch (error) {
logger.error('捕获到异常:', error);
}
npm install morgan
const express = require('express');
const morgan = require('morgan');
const app = express();
app.use(morgan('combined')); // 输出到控制台或日志文件
app.get('/', (req, res) { res.send('Hello World'); });
app.listen(3000, () => { console.log('Server is running on port 3000'); });
4xx
和5xx
的请求:grep '4' access.log # 查找所有4xx(客户端错误)的请求
grep '5' access.log # 查找所有5xx(服务器错误)的请求
sudo journalctl -u your-node-service.service
/var/log
目录下,可以在这里查找相关日志文件。npm install pm2 -g
pm2 start app.js --name my-app
pm2 logs my-app
通过以上步骤和方法,可以有效地排查和解决Ubuntu中Node.js应用程序的异常请求问题。