Golang日志如何自定义格式
作者:BlueNight
时间:2026-04-21
浏览:1
Golang日志如何自定义格式 在Golang里记录日志,标准库里的“log”包是个不错的起点。不过,默认的输出格式可能不太够用,比如你想加上特定的前缀,或者更详细的时间、文件信息。这时候,自定义日志格式就成了刚需。 别担心,实现起来并不复杂。核心就在于灵活运用log包提供的SetPrefix和Se
本文目录
Golang日志如何自定义格式
在Golang里记录日志,标准库里的“log”包是个不错的起点。不过,默认的输出格式可能不太够用,比如你想加上特定的前缀,或者更详细的时间、文件信息。这时候,自定义日志格式就成了刚需。
别担心,实现起来并不复杂。核心就在于灵活运用log包提供的SetPrefix和SetFlags这两个方法。下面,我们通过一个完整的示例,手把手带你走一遍流程。

package main
import (
"log"
"os"
"time"
)
func main() {
// 创建一个日志文件
logFile, err := os.OpenFile("logs.txt", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if err != nil {
log.Fatal(err)
}
defer logFile.Close()
// 设置日志输出到文件
log.SetOutput(logFile)
// 设置日志前缀
log.SetPrefix("自定义前缀: ")
// 设置日志标志,这里我们设置了时间戳和日志级别
log.SetFlags(log.LstdFlags | log.Lshortfile)
// 记录日志
log.Println("这是一条日志信息")
}
我们一步步来看这段代码做了什么。首先,它创建(或打开)了一个名为logs.txt的文件,用来接收日志输出,这比只打印到控制台要实用得多。
接下来的三步是关键操作:
SetOutput将日志的输出目的地指向了我们刚创建的文件。SetPrefix为每行日志添加了一个统一的“自定义前缀: ”,方便快速识别日志来源或类型。SetFlags这里配置了格式标志。组合使用log.LstdFlags(标准日期时间)和log.Lshortfile(短文件名和行号),能让日志信息包含关键的上下文。
运行这段程序后,打开生成的logs.txt文件,你会看到类似下面这样一行记录:
自定义前缀: 2022/08/01 12:34:56 main.go:28: 这是一条日志信息
看,格式完全按照我们的设定来了:自定义前缀打头,紧接着是精确到秒的时间戳,然后定位到具体的代码文件和行号,最后才是我们输入的日志内容。这样一来,排查问题时就清晰多了。
当然,这只是一个起点。log包还支持其他标志,比如log.Lmicroseconds来获取微秒级时间,你可以根据自己的需求自由组合。掌握这几个方法,就能让Golang的日志输出完全贴合你的项目规范。
作者最新文章
blender贴图文件在哪里查找与打开教程
2026-10-11 09:08
3ds Max动画播放卡顿或渲染跳帧的解决方法
2026-10-02 17:00
联发科天玑9600 Pro首发2nm:能效与游戏渲染技术详解
2026-09-08 16:54
python代码大全:把常用代码片段整理成可维护的工具箱
2026-09-03 17:05
Excel基础操作指南:数据录入、格式设置、公式应用与打印预览
2026-09-02 12:47
下一篇:
怎样调整Ubuntu PHP配置文件权限
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多










































