在Ubuntu上监控Node.js应用程序的性能和资源使用情况有多种方法。以下是一些常用的工具和解决方案:
PM2是一个流行的Node.js进程管理器,它不仅可以管理你的应用,还可以提供监控和自动重启功能。
安装PM2:
sudo npm install pm2 -g
启动应用并监控:
pm2 start app.js --name my-app
pm2 monitor
使用 pm2 monitor
命令可以查看应用的实时状态、CPU和内存使用情况。
Node.js提供了一些内置的性能监控工具,如 process.memoryUsage()
和 process.cpuUsage()
,可以用来获取应用的内存和CPU使用情况。
const memoryUsage = process.memoryUsage();
console.log(memoryUsage);
const cpuUsage = process.cpuUsage();
console.log(cpuUsage);
日志记录对于监控和故障排除至关重要。可以使用 winston
或 bunyan
等日志库来记录应用的运行日志。
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'combined.log' }),
new winston.transports.Console()
]
});
通过上述方法,你可以有效地监控Node.js应用在Ubuntu上的性能和健康状况,确保应用的稳定性和可靠性。