CentOS Golang日志格式如何自定义
作者:小确幸
时间:2026-06-12
浏览:0
在CentOS环境下,通过Golang标准库log包可自定义日志格式,包括时间戳、文件名和行号。创建main.go文件,设置日志输出到文件,清空默认格式后添加前缀和标志位,编译运行即可。若需更丰富功能,可选logrus或zap第三方库。
在 CentOS 环境下,用 Golang 做自定义日志格式其实并不复杂——标准库 log 包就已经够用,当然,如果你偏好更丰富的功能,logrus 或 zap 这类第三方库也是常见的选择。下面先用标准库走一遍完整的操作流程,保证你拿到就能直接用。

先创建一个名为
main.go的文件,所有代码都写在这里。写入下面的代码,关键部分已经加了注释,方便你理解每一步在做什么:
package main
import (
"log"
"os"
"time"
)
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.SetFlags(0) // 先清零,避免干扰
log.SetPrefix(time.Now().Format("2006-01-02 15:04:05")) // 加上时间前缀
log.SetFlags(log.LstdFlags | log.Lshortfile) // 再追加标准时间戳和短文件名行号
// 写一条测试日志
log.Println("This is a log message.")
}
- 终端里执行编译和运行:
go build main.go
./main
- 查看同目录下生成的
app.log文件,内容看起来类似这样:
2022-01-01 12:34:56 main.go:28: This is a log message.
这个例子用标准库实现了自定义格式——时间戳、文件名、行号全都包含进去了。你完全可以根据实际需求调整前缀、标志位,比如去掉文件名只保留时间,或者改用自定义的日期格式。如果标准库的灵活度还不够,那么 logrus 或 zap 的文档里也有更丰富的定制方案,值得一看。
作者最新文章
Photoshop抠图教程详细步骤图解:新手入门常用方法与技巧
2026-09-22 14:38
Windows 10
2026-09-16 17:44
Python安装后怎么打开:使用IDLE或命令行启动解释器
2026-09-16 13:54
Windows系统Python安装教程:下载、勾选PATH及环境变量配置
2026-09-16 13:53
“等灯不计时”落地解析:算法善意如何转化为技术能力与生态协同
2026-09-08 18:03
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































