温馨提示×

怎样用centos查golang日志

小樊
37
2026-09-15 06:05:59
栏目: 编程语言

在 CentOS 上查看 Golang 程序日志,方式取决于你的 日志写在哪里。下面按常见情况逐一说明。


一、Golang 日志写到了文件(最常见)

1. 直接查看日志文件

假设日志文件是 app.log:

cat /path/to/app.log

实时查看(推荐):

tail -f /path/to/app.log

查看最后 100 行:

tail -n 100 /path/to/app.log

2. 用 less 方便搜索

less /path/to/app.log

常用操作:

  • G 跳到末尾
  • /error 搜索
  • q 退出

二、Golang 日志输出到 stdout / stderr(如 docker、systemd)

1. 如果通过 systemd 启动(推荐方式)

查看服务状态:

systemctl status your-service

查看实时日志:

journalctl -u your-service -f

查看今天日志:

journalctl -u your-service --since today

2. 如果是 Docker 容器

查看容器日志:

docker logs -f container_name

三、Golang 使用了日志库(log / zap / logrus)

常见日志库位置

  • log:默认输出到 stderr
  • zap / logrus:通常配置为文件或 stdout

检查程序启动参数或配置文件:

ps -ef | grep your-program

四、按关键字搜索日志(非常实用)

查找 ERROR:

grep ERROR /path/to/app.log

实时过滤:

tail -f /path/to/app.log | grep ERROR

统计错误次数:

grep -c ERROR /path/to/app.log

五、CentOS 系统级日志(程序崩溃时)

查看系统日志:

/var/log/messages
# 或
journalctl -xe

六、推荐做法(生产环境)

✅ 使用 systemd + journalctl
✅ 或 日志文件 + logrotate
✅ 避免直接 fmt.Println


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

  • Golang 是怎么启动的(systemd / docker / 直接运行)
  • 日志是写到文件还是控制台
  • 用的什么日志库

我可以给你更精确的命令。

0 踩