centos下js日志存储在哪
导读:CentOS 下 JavaScript 日志常见存放位置 在 CentOS 环境中,“JS 日志”通常指 Node.js 应用日志。其存放路径取决于你的运行方式与配置,常见位置如下: 使用 PM2:默认在用户目录的 ~/.pm2/logs...
CentOS 下 JavaScript 日志常见存放位置
在 CentOS 环境中,“JS 日志”通常指 Node.js 应用日志。其存放路径取决于你的运行方式与配置,常见位置如下:
- 使用 PM2:默认在用户目录的 ~/.pm2/logs/,常见文件为 xxx-out.log(标准输出)与 xxx-err.log(错误输出),其中 xxx 为应用名。若以 root 运行,路径为 /root/.pm2/logs/。也可在 ecosystem.config.js 中自定义为 /var/log/nodejs/ 等目录。
- 作为 systemd 服务运行:日志进入 journald,用命令查看:journalctl -u your-service-name.service。
- 直接在控制台运行且无文件写入:日志仅输出到控制台,不会自动落盘。
- 应用或日志库自定义目录:常见为项目内的 logs/ 目录,或运维统一放在 /var/log/nodejs/(需提前创建目录并设定权限)。
- 使用日志库(如 Winston、log4js、morgan):路径完全由代码或配置指定,可能在项目目录或 /var/log/ 下。
快速定位日志路径
- 查看是否使用 PM2:执行 pm2 list 找到应用名,默认日志在 ~/.pm2/logs/;若自定义,检查项目目录或 /var/log/nodejs/。
- 检查是否为 systemd 服务:执行 systemctl list-units --type=service | grep node,用 journalctl -u 服务名 查看。
- 在项目内查找日志配置:搜索代码或配置中的 filename、out_file、error_file、LOG_PATH 等关键字,确认日志目录。
- 全盘快速查找日志文件:执行 sudo find / -type f -name “*.log” 2> /dev/null | grep -i node,缩小范围后再到对应目录查看。
查看与分析日志的常用命令
- 实时查看:
- 文件日志:tail -f /path/to/app.log
- systemd 日志:journalctl -u your-service-name.service -f
- 检索关键字:
- 过滤错误:grep -i “error” /path/to/app.log
- 多关键字与时间范围:journalctl -u your-service-name.service --since “2025-01-01” | grep -i “timeout”
- 分页与统计:
- 分页查看:less /path/to/app.log
- 统计错误数:grep -ic “error” /path/to/app.log
- 日志轮转与保留:大文件通常由 logrotate 管理,可按天/大小轮转并压缩归档。
规范存放与权限设置示例
- 统一目录:建议将 Node.js 日志集中到 /var/log/nodejs/,并设定属主属组为运行应用的用户(如 nodejs:nodejs)。
- 创建目录与授权:
- 创建:sudo mkdir -p /var/log/nodejs
- 授权:sudo chown nodejs:nodejs /var/log/nodejs
- PM2 配置示例(ecosystem.config.js):
- 输出:out_file: ‘/var/log/nodejs/myapp-out.log’
- 错误:error_file: ‘/var/log/nodejs/myapp-error.log’
- 使用 logrotate 自动轮转(/etc/logrotate.d/nodejs):
- 配置片段:
- /var/log/nodejs/*.log { daily rotate 7 compress missingok notifempty create 640 nodejs nodejs }
- 含义:按天轮转、保留 7 天、压缩旧日志、自动创建并设置权限。
- 配置片段:
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos下js日志存储在哪
本文地址: https://pptw.com/jishu/787790.html
