在 Debian 系统上,Golang 程序本身没有统一的“日志文件”,日志位置取决于程序自己是怎么写日志的。下面按常见情况说明:
很多 Golang 程序只是用:
fmt.Println("xxx")
log.Println("xxx")
这种情况下:
journalctl -u 服务名
journalctl -u 服务名 -f # 实时查看
例如:
journalctl -u mygolangapp
有些 Golang 程序会写日志到文件,例如:
log.SetOutput(os.OpenFile("/var/log/myapp.log", ...))
常见路径包括:
/var/log/myapp.log
/var/log/myapp/
/opt/myapp/logs/
✅ 直接查看
cat /var/log/myapp.log
tail -f /var/log/myapp.log
日志输出到 stdout/stderr
docker logs 容器名
docker logs -f 容器名
journalctl -u docker
例如:
apt install some-golang-app
日志通常在:
/var/log/
或 systemd:
journalctl -u some-golang-app
ps aux | grep yourprogram
systemctl status yourprogram
常见配置项:
log
logfile
log_path
log.dir
| 场景 | 日志位置 |
|---|---|
| 直接运行 | 终端 |
| systemd | journalctl -u 服务名 |
| 自己写文件 | /var/log/*.log |
| Docker | docker logs |
| apt 安装 | /var/log/ 或 systemd |
如果你愿意,可以把: