centos

CentOS如何定制Golang日志格式

小樊
40
2025-12-25 11:35:15
栏目: 编程语言

在 CentOS 系统中,你可以使用 Golang 的 log 包或者第三方日志库(如 logrus、zap 等)来定制日志格式。这里我将为你提供使用 log 包和 logrus 库的示例。

使用 Golang log 包定制日志格式

  1. 创建一个名为 main.go 的文件,然后输入以下代码:
package main

import (
	"log"
	"os"
)

func main() {
	log.SetOutput(os.Stdout)
	log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
	log.Println("这是一条日志信息")
}

在这个示例中,我们设置了日志输出到标准输出(os.Stdout),并使用 SetFlags 方法设置了日志格式,包括日期、时间和文件名及行号。

  1. 在终端中运行 go run main.go,你将看到如下输出:
2022/06/25 14:23:45 main.go:12: 这是一条日志信息

使用 logrus 库定制日志格式

  1. 首先,你需要安装 logrus 库。在终端中运行以下命令:
go get github.com/sirupsen/logrus
  1. 创建一个名为 main.go 的文件,然后输入以下代码:
package main

import (
	"github.com/sirupsen/logrus"
)

func main() {
	logrus.SetFormatter(&logrus.TextFormatter{
		TimestampFormat: "2006-01-02 15:04:05",
		FullTimestamp:   true,
		CallerPrettyfier: func(f *runtime.Frame) (string, string) {
			filename := f.File
			if base := filepath.Base(filename); base == "main.go" {
				filename = filepath.Dir(filename)
			}
			return filename, f.Function
		},
	})
	logrus.Info("这是一条日志信息")
}

在这个示例中,我们设置了 logrus 的日志格式,包括时间戳、文件名和函数名。

  1. 在终端中运行 go run main.go,你将看到如下输出:
2022-06-25 14:23:45 main.go:12: 这是一条日志信息

这样,你就可以根据自己的需求定制 Golang 日志格式了。

0
看了该问题的人还看了