商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 如何查看CentOS上Golang日志

如何查看CentOS上Golang日志

  发布于2026-07-08 阅读(0)

扫一扫,手机访问

在CentOS上排查Golang应用时,日志查看几乎是绕不开的操作。不管你是刚把服务跑起来、还是线上出了故障需要快速定位,搞清楚日志在哪里、怎么看,往往能省下大量时间。下面围绕几种常见部署方式,把查看日志的要点逐一拆开讲。

如何查看CentOS上Golang日志

直接在日志文件里翻(日志输出到文件的情况)

如果Golang应用用了标准库的log包或者第三方库(比如logruszap)把日志写进了文件——最常见的就是app.log这类——那么Linux下的经典命令就能搞定:

  • 想看完整内容,直接cat /path/to/app.log(记得换成实际路径);
  • 实时监控新写入的行,用tail -f /path/to/app.log,这招在调试时特别实用;
  • 要慢慢翻阅,less /path/to/app.log更顺手,上下翻页、按q退出;
  • 只想揪出ERROR级别的日志,grep "ERROR" /path/to/app.log一行搞定,快速定位问题。

systemd服务的日志:journalctl登场

如果Golang应用是以systemd服务的形式运行的(服务文件通常放在/etc/systemd/system/yourapp.service),那么日志就归systemd的journald管了。这时用journalctl命令是标准做法:

  • sudo journalctl -u yourapp.service —— 查看指定服务的全部日志;
  • 加个-f参数(sudo journalctl -u yourapp.service -f)就能像tail -f一样实时跟踪;
  • 想看某个时间点之后的日志,用--since参数:sudo journalctl --since "2025-10-01 00:00:00" -u yourapp.service
  • 只关注最近几条,-n 10指定行数,比如sudo journalctl -u yourapp.service -n 10

开发调试时:直接看终端输出

开发阶段最直接的方式就是直接在终端跑应用。不管是用go run main.go还是直接跑编译后的二进制./myapp,日志都会刷刷地显示在终端上。如果想把输出保存下来,用重定向就行:

./myapp > app.log 2>&1

这条命令把标准输出和标准错误都重定向到同一个文件,之后就可以用tail -f app.log随时查看了。

生产环境:上点高级工具

当应用上了生产、日志量变大后,单纯靠命令行翻文件就不那么高效了。行业里常见的做法是引入专门的日志管理工具:

  • ELK Stack(Elasticsearch + Logstash + Kibana) —— 收集、存储、分析一条龙,Kibana的仪表盘能让日志一目了然;
  • Fluentd —— 统一的日志收集层,能把日志转发到Elasticsearch、S3等各种后端;
  • Prometheus + Grafana —— 虽然主要是监控指标,但结合日志数据做关联分析,效果也很不错。

以上几种方式基本覆盖了CentOS上查看Golang日志的常见场景。实际用的时候,根据应用运行方式和你的需求灵活选择就好。

本文转载于:https://www.yisu.com/ask/52381634.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注