温馨提示×

linux nohup日志怎么监控

小樊
57
2026-09-27 16:30:17
栏目: 智能运维

在 Linux 下使用 nohup 启动程序时,通常会把输出重定向到日志文件(如 nohup.out 或自定义日志)。监控这些日志常用的方法如下:


一、实时查看日志(最常用)

1. tail -f(最基础)

tail -f nohup.out

或自定义日志:

tail -f /path/to/app.log

退出:Ctrl + C

2. 从文件末尾 N 行开始看

tail -n 100 -f app.log

二、带过滤的实时监控

1. 过滤关键字(如 ERROR)

tail -f app.log | grep ERROR

2. 高亮显示

tail -f app.log | grep --color=auto ERROR

三、多日志同时监控

multitail app.log error.log

(需安装 multitail)


四、按时间滚动查看

less +F app.log
  • F:进入实时跟踪
  • Ctrl + C:暂停
  • F:继续

五、后台进程状态监控

1. 查看 nohup 进程

ps -ef | grep your_program

2. 查看进程是否还活着

pgrep -af your_program

六、日志轮转(防止日志过大)

使用 logrotate

示例 /etc/logrotate.d/app:

/path/to/app.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
}

七、进阶:自动告警(简单方案)

tail -f app.log | grep ERROR | while read line; do
    echo "$line" | mail -s "App Error" admin@xxx.com
done

八、推荐实践(重要)

✅ 不要只依赖 nohup.out

nohup python app.py > app.log 2>&1 &

✅ 生产环境建议用:

  • systemd
  • supervisor
  • pm2(Node)
  • docker + logging

如果你愿意,可以告诉我:

  • 用的什么语言(Python / Java / Node)
  • 是否是生产环境
  • 是否需要告警或可视化

我可以给你更合适的监控方案。

0 踩