Node.js 日志频繁报错的原因可能有很多,通常需要结合具体的错误信息来判断。下面我按常见类别给你梳理一下,你可以对照看看属于哪一类,也方便你下一步排查。
undefined is not a function)null / undefined 的属性✅ 示例:
app.get('/user', async (req, res) => {
const user = await getUser() // 如果抛错,没人 catch
})
✅ 解决:
try/catchprocess.on('unhandledRejection', e => console.error(e))
process.on('uncaughtException', e => console.error(e))
node_modules 损坏✅ 解决:
rm -rf node_modules package-lock.json
npm install
node -v
✅ 常见报错:
JavaScript heap out of memory
EMFILE: too many open files
✅ 解决:
node --max-old-space-size=1024✅ 常见报错:
ECONNREFUSED
ETIMEDOUT
socket hang up
✅ 解决:
✅ 示例:
emitter.on('data', handler) // 每次请求都注册一次
✅ 示例:
PORT is not defined
EADDRINUSE
node app.js 2> error.log
console.error(err.stack)
winstonpinobunyanpm2node --inspect你可以贴出:
我可以直接帮你定位是哪一类问题,并给出修改示例。