您的位置:首页 >如何在centos上为golang配置日志输出
发布于2026-04-25 阅读(0)
扫一扫,手机访问
在 CentOS 环境下为 Golang 应用配置日志输出,其实并不复杂。通常有两种主流选择:一是直接使用 Go 语言内置的 log 包,它简单够用;二是引入功能更强大的第三方日志库,比如 logrus 或 zap。下面,我们就以 Go 自带的 log 包为例,手把手演示一个基础的配置流程。

首先,创建一个名为 main.go 的文件。将以下代码复制进去,这段代码清晰地展示了如何创建日志文件、设置输出目标并定义日志格式。
package main
import (
"log"
"os"
)
func main() {
// 创建日志文件
logFile, err := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
log.Fatalf("error opening log file: %v", err)
}
defer logFile.Close()
// 设置日志输出到文件
log.SetOutput(logFile)
// 设置日志前缀和标志
log.SetPrefix("INFO: ")
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
// 记录日志
log.Println("This is an info log.")
log.Printf("This is a formatted %s log.", "info")
}
简单来说,这段代码做了三件事:它会在程序所在目录创建一个叫 app.log 的文件(如果已存在则追加写入);然后将所有日志输出重定向到这个文件;最后,为每条日志加上了“INFO: ”前缀,并附上详细的日期、时间以及发出日志的代码文件名和行号。
代码准备好之后,打开终端,切换到存放 main.go 的目录。依次执行下面两条命令:
go build main.go
./main
第一条命令会将你的 Go 代码编译成可执行文件,第二条命令则是运行它。程序运行后,如果没有报错,就会安静地在后台执行我们设定的日志任务。
现在,回到文件目录看看。你应该能发现一个新生成的 app.log 文件。用任何文本编辑器打开它,里面记录的内容会类似下面这样:
INFO: 2022/01/01 12:00:00 main.go:28: This is an info log.
INFO: 2022/01/01 12:00:00 main.go:29: This is a formatted info log.
看,日志已经按照我们预设的格式,完整地记录下来了。日期、时间、文件位置、自定义前缀以及消息内容,一目了然。
至此,一个在 CentOS 上为 Golang 应用配置基础日志输出的流程就完成了。当然,这只是一个起点。你可以根据实际需求,灵活调整日志的级别划分、输出格式(比如加入微秒时间戳),或者将日志同时输出到控制台和文件。如果项目对日志性能、结构化输出(如 JSON 格式)有更高要求,那么转向查阅 logrus、zap 等第三方库的官方文档,会是更高效的选择。它们提供了更丰富的功能,足以应对复杂的生产环境需求。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9