在Debian系统上管理Node.js应用日志,可按以下步骤操作:
npm install winston  # 安装Winston
info、error)和输出格式(如JSON)。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.Console()
  ]
});
logger.info('应用启动成功');
logrotate自动轮转日志文件,避免单个文件过大。sudo nano /etc/logrotate.d/nodejs-app
# 添加配置:/path/to/logs/*.log {
#   daily
#   rotate 7
#   compress
#   missingok
#   create 0640 root adm
# }
sudo logrotate -f /etc/logrotate.d/nodejs-app  # 强制测试配置
sudo npm install -g pm2
pm2 start app.js --name my-app
pm2 logs  # 查看实时日志
pm2 set pm2:log-date-format "YYYY-MM-DD HH:mm Z"  # 设置日志时间格式
journalctl查看系统级日志,或通过/var/log目录下的文件(如syslog)排查问题。journalctl -u node-app  # 查看特定服务的系统日志
关键实践:生产环境中建议使用JSON格式结构化日志,结合ELK等集中式日志系统进行存储和分析,同时确保敏感信息脱敏。