如何在Debian中定制Golang日志格式
作者:ClearCorner
时间:2026-07-07
浏览:0
在Debian系统中,如果你想给Golang的日志输出加点“个人风格”,其实并不复杂。标准库自带log包就能搞定基础定制,要是追求更丰富的功能,像logrus、zap这类第三方库也是不错的选择。下面直接上干货,分别演示一下标准库和logrus的使用方法。 使用标准库"log" 先创建一个Go程序文件
在Debian系统中,如果你想给Golang的日志输出加点“个人风格”,其实并不复杂。标准库自带log包就能搞定基础定制,要是追求更丰富的功能,像logrus、zap这类第三方库也是不错的选择。下面直接上干货,分别演示一下标准库和logrus的使用方法。

使用标准库"log"
- 先创建一个Go程序文件,比如命名为
main.go:
package main
import (
"log"
"os"
)
func main() {
// 创建一个自定义的日志输出器
logger := log.New(os.Stdout, "自定义前缀: ", log.Ldate|log.Ltime|log.Lshortfile)
// 使用自定义的日志输出器记录日志
logger.Println("这是一条日志信息")
}
- 在终端中运行程序:
go run main.go
你会看到类似这样的输出:
自定义前缀: 2022/08/01 12:34:56 main.go:10: 这是一条日志信息
标准库的用法就是这么干净:通过log.New指定输出目标、前缀和标志位,就能控制时间戳、文件位置等细节。当然,如果觉得标准库的格式选项不够灵活,那第三方库就更对胃口了。
使用第三方库"logrus"
- 安装logrus库:
go get github.com/sirupsen/logrus
- 创建一个Go程序文件,例如
main.go:
package main
import (
"github.com/sirupsen/logrus"
)
func main() {
// 创建一个新的logrus实例
logger := logrus.New()
// 设置日志级别
logger.SetLevel(logrus.DebugLevel)
// 设置日志格式为文本格式
logger.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
},
})
// 使用自定义的日志输出器记录日志
logger.Info("这是一条日志信息")
}
- 在终端中运行程序:
go run main.go
输出效果类似这样:
INFO[0000] 这是一条日志信息
logrus的亮点在于:日志级别、格式、调用者信息都能精细控制。上面的例子展示了如何自定义时间戳格式和调用者信息,当然你也可以换成JSON格式,或者加上钩子、字段等高级功能。总之,根据自己的需求调整即可。更多关于logrus的信息,请参考官方文档:https://github.com/sirupsen/logrus
作者最新文章
多张图片转PDF教程:在线批量合成与顺序调整技巧
2026-09-03 10:03
AutoCAD 2014安装指南:环境检查、授权配置与首次启动设置
2026-09-02 13:34
watchstore下载软件教程:设备兼容、安装流程与常见故障
2026-09-02 13:24
PDF转Word免费方法及编辑可行性判断指南
2026-09-01 18:14
魅族20pro怎么样 魅族20pro参数配置
2026-08-25 15:42
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































