温馨提示×

Debian JS日志怎么过滤

小樊
46
2026-07-13 02:46:05
栏目: 编程语言

在 Debian 上“过滤 JS 日志”通常分几种场景,下面按最常见情况给你一个速查表,你可以直接对照用。


一、过滤系统 / 应用日志(最常见)

1️⃣ 用 journalctl(systemd 日志)

如果 JS 服务是通过 systemd 运行的(如 Node.js 服务):

# 查看某个服务的日志
journalctl -u your-service-name

# 实时查看
journalctl -u your-service-name -f

# 只看错误
journalctl -u your-service-name -p err

# 按时间过滤(今天)
journalctl -u your-service-name --since today

# 关键字过滤(如 error / 500)
journalctl -u your-service-name | grep "error"

2️⃣ 过滤普通文本日志文件

如果 JS 日志写到文件(如 /var/log/app.log):

# 查看包含 error 的行
grep "error" /var/log/app.log

# 忽略大小写
grep -i "error" /var/log/app.log

# 实时过滤
tail -f /var/log/app.log | grep "error"

# 过滤时间段
sed -n '/2026-01-20 10:00/,/2026-01-20 11:00/p' /var/log/app.log

二、过滤 Node.js 应用日志

1️⃣ 只输出某一级别日志

如果你用的是 console

console.error("error");
console.log("info");

过滤 error:

node app.js 2>&1 | grep "error"

2️⃣ 使用日志库(推荐)

winston 示例

const winston = require("winston");

const logger = winston.createLogger({
  level: "info",
  transports: [
    new winston.transports.File({ filename: "error.log", level: "error" }),
    new winston.transports.File({ filename: "combined.log" })
  ]
});

只查看 error 日志:

grep "error" error.log

三、Nginx / Apache 中的 JS 请求日志

Nginx

# 只看 JS 文件请求
grep "\.js" /var/log/nginx/access.log

# 只看 404
grep " 404 " /var/log/nginx/access.log

# 看某个 IP
grep "1.2.3.4" /var/log/nginx/access.log

四、浏览器端 JS 日志(前端)

如果是前端 JS 报错,在 Debian 上一般:

  • 打开浏览器 → DevTools → Console
  • 或查看:
# Nginx / Apache 访问日志
/var/log/nginx/access.log

前端 JS 日志不会直接出现在系统日志里


五、常用过滤命令速查

grep "关键字" 文件
tail -f 文件 | grep "关键字"
journalctl -u 服务名 -p err
awk '/error/ {print}' 文件
sed -n '/start/,/end/p' 文件

六、我可以更精确帮你

你可以直接告诉我:

  1. JS 是什么? Node.js / 前端 / Electron?
  2. 日志在哪? journal / 文件 / nginx?
  3. 想过滤什么? error / 时间 / IP / 请求?

我可以给你一条完全可直接用的命令

0