Linux 下 JS 日志为空,通常不是“日志系统坏了”,而是没产生 / 没写到你以为的位置 / 被环境吞掉了。下面按最常见原因给你一个排查清单。
ps aux | grep node
node app.js
如果有日志,说明是运行方式问题。
node app.js &
可能日志在:
正确方式:
node app.js > app.log 2>&1 &
如果你用:
ExecStart=/usr/bin/node /opt/app/app.js
✅ 日志在 journalctl,不是文件:
journalctl -u your-service -f
✅ 如果完全为空:
console.logRestart=always 反复重启Linux 上“前端 JS 日志为空”通常指:
前端 console.log 只存在于浏览器
查看方式:
logger.info('xxx') // 如果 level 是 error,info 不会输出
pm2 logs
ls -l /var/log/your.log
常见错误:
测试:
fs.appendFileSync('/tmp/test.log', 'hello')
try {
doSomething()
} catch (e) {
// 什么都没做
}
改成:
catch (e) {
console.error(e)
}
console.log如果你愿意,可以把下面信息发我,我可以精准定位:
我可以直接告诉你为什么是空的。