在 Ubuntu 上“远程看 Node.js 日志”通常有以下几种常见做法,按简单 → 专业排列,你可以根据场景选。
如果 Node.js 跑在远程 Ubuntu 服务器上,日志输出到文件:
# 本地终端
ssh user@服务器IP
# 查看实时日志
tail -f /path/to/node.log
如果是 pm2 启动的:
pm2 logs
# 或指定应用
pm2 logs app_name
✅ 优点:简单、安全
❌ 缺点:只能你一个人看
在服务器上:
pm2 start app.js
pm2 logs
远程:
ssh user@ip "pm2 logs --lines 100"
如果 Node.js 是用 systemd 管理的:
# 远程查看
ssh user@ip "journalctl -u node-app.service -f"
Node 服务示例:
[Unit]
Description=Node App
[Service]
ExecStart=/usr/bin/node /var/www/app/index.js
Restart=always
User=node
[Install]
WantedBy=multi-user.target
✅ 优点:稳定、可管理
✅ 日志自动轮转
pm2 monitor
app.get('/logs', (req, res) => {
res.sendFile('/path/to/node.log')
})
适合多人、多服务器:
Node.js 用:
npm i winston
ssh user@ip "tail -f /var/log/node.log" > local.log
| 场景 | 推荐方式 |
|---|---|
| 自己调试 | ssh + tail -f |
| 生产服务 | systemd + journalctl |
| Node 专用 | pm2 logs |
| 团队协作 | Loki / ELK |
如果你愿意,可以告诉我:
我可以直接给你可复制的配置命令。