在Ubuntu系统中,监控JavaScript(Node.js)应用程序的日志有多种方法。以下是一些推荐的工具及其相关信息:
Winston:
npm install winstonconst winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.Console(),
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' })
]
});
logger.info('Server started on port 3000');
logger.error('Database connection failed');
Prometheus 和 Grafana:
npm install prom-clientELK Stack(Elasticsearch, Logstash, Kibana):
PM2:
npm install pm2 -g
pm2 start app.js
pm2 logs myapi
tail -f命令实时查看日志文件的末尾内容,非常适合实时监控日志文件的变化。crontab实现定时检查。通过上述方法,您可以有效地监控和管理Ubuntu上的Node.js应用程序日志,从而提高应用的稳定性和可维护性。