如何查看Ubuntu Node.js日志错误
导读:如何查看Ubuntu下Node.js日志错误 在Ubuntu系统中,查看Node.js日志错误需结合系统日志、应用自身日志及进程管理工具,以下是具体方法: 1. 查看系统级日志 Ubuntu的系统日志会记录Node.js应用的运行状态(包括...
如何查看Ubuntu下Node.js日志错误
在Ubuntu系统中,查看Node.js日志错误需结合系统日志、应用自身日志及进程管理工具,以下是具体方法:
1. 查看系统级日志
Ubuntu的系统日志会记录Node.js应用的运行状态(包括错误),主要存储在/var/log
目录下:
- 查看系统综合日志:使用
cat
命令查看syslog
(包含大部分系统及应用日志),或error.log
(专门记录错误信息):cat /var/log/syslog | grep "node" # 筛选Node.js相关日志 cat /var/log/error.log | grep "node" # 筛选错误日志
- 查看内核日志:若错误与系统内核相关(如权限问题),可使用
kern.log
:cat /var/log/kern.log | grep "node"
- 使用journalctl命令:若Node.js以
systemd
服务运行(如通过node app.js --name my-node-app
指定服务名),可通过journalctl
查看关联日志:journalctl -u my-node-app -t # -u指定服务名,-t显示日志标签
2. 查看应用自身日志文件
若应用启动时重定向了输出(如将日志写入文件),可直接查看指定路径的日志文件:
- 直接查看日志文件:若启动命令为
node app.js > logs/app.log 2> & 1 &
(将标准输出和错误输出重定向到logs/app.log
),可使用以下命令查看:cat logs/app.log # 查看全部日志 less logs/app.log # 分页查看(按q退出) tail -f logs/app.log # 实时查看最新日志(Ctrl+C退出)
- 结合grep筛选错误:若日志文件较大,可通过
grep
筛选error
关键字:cat logs/app.log | grep "error"
3. 使用进程管理工具查看日志
若通过pm2
等进程管理器启动应用,可直接使用工具命令查看日志:
- pm2查看日志:若应用由
pm2
管理(如pm2 start app.js
),可使用以下命令:pm2 logs # 查看所有应用的实时日志 pm2 logs my-app # 查看指定应用(如"my-app")的日志
4. 错误日志分析与常见解决方法
- 分析错误信息:日志中的错误通常包含时间戳、错误类型(如
Error
、TypeError
)、错误消息(如listen EADDRINUSE
)及堆栈跟踪(指向错误代码位置)。 - 常见错误及解决:
- 端口占用:错误为
listen EADDRINUSE :::3000
,解决方法:sudo lsof -i :3000 # 查找占用端口的进程 sudo kill -9 < PID> # 终止进程
- 模块未找到:错误为
Cannot find module 'xxx'
,解决方法:npm install xxx # 安装缺失的依赖
- 语法错误:错误为
SyntaxError: Unexpected token
,解决方法:检查代码语法(如缺少括号、引号)。
- 端口占用:错误为
注意事项
- 若应用未配置日志文件,优先通过系统日志或进程管理工具查看错误。
- 生产环境中,建议使用
winston
、bunyan
等日志库配置日志分级(如error
、warn
)和日志轮转(如winston-daily-rotate-file
),避免日志文件过大。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何查看Ubuntu Node.js日志错误
本文地址: https://pptw.com/jishu/719115.html