linux

Golang日志输出格式如何自定义

小樊
38
2025-06-30 06:44:13
栏目: 编程语言

在Golang中,可以使用标准库"log"来记录日志。要自定义日志输出格式,可以通过设置log包的SetFlagsSetPrefix方法来实现。以下是一个简单的示例:

package main

import (
	"log"
	"os"
	"time"
)

func main() {
	// 创建一个日志文件
	logFile, err := os.OpenFile("logs.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
	if err != nil {
		log.Fatal(err)
	}
	defer logFile.Close()

	// 设置日志输出到文件
	log.SetOutput(logFile)

	// 设置日志前缀
	log.SetPrefix("MyApp: ")

	// 设置日志标志,包括日期、时间和文件名
	log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)

	// 记录日志
	log.Println("This is a log message")
}

在这个示例中,我们首先创建了一个名为logs.log的日志文件,并将其设置为日志的输出目标。然后,我们使用SetPrefix方法设置了日志的前缀为"MyApp: "。接下来,我们使用SetFlags方法设置了日志的标志,包括日期、时间和文件名。最后,我们使用Println方法记录了一条日志消息。

运行这个程序后,你会在当前目录下看到一个名为logs.log的文件,其中包含了自定义格式的日志输出。例如:

2022/08/01 12:34:56 main.go:28: MyApp: This is a log message

你可以根据需要调整SetPrefixSetFlags方法中的参数,以实现自定义的日志输出格式。

0
看了该问题的人还看了