在 Debian 上“查 Golang 日志”通常分几种情况,下面按常见场景给你说明。
如果你是这样运行的:
./myapp
日志直接显示在终端。
后台运行时查看:
./myapp > app.log 2>&1 &
tail -f app.log
log.SetOutput(os.OpenFile("/var/log/myapp.log", os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0644))
查看日志:
tail -f /var/log/myapp.log
less /var/log/myapp.log
grep ERROR /var/log/myapp.log
sudo journalctl -u myapp.service
实时查看:
sudo journalctl -u myapp.service -f
只看错误:
sudo journalctl -u myapp.service -p err
[Unit]
Description=My Golang App
[Service]
ExecStart=/usr/local/bin/myapp
WorkingDirectory=/opt/myapp
User=appuser
Restart=always
[Install]
WantedBy=multi-user.target
这些库一般也是:
查看方式和上面一样:
sudo journalctl -u myapp -f
# 或
tail -f /var/log/myapp.log
# 看进程
ps aux | grep myapp
# 看端口
ss -lntp | grep myapp
# 看系统日志
dmesg | tail
# 看全部日志
journalctl -xe
你可以告诉我:
我可以给你更具体的命令示例。