在Golang中,可以使用标准库"log"或第三方库(如"logrus"、"zap"等)来实现日志输出。这里以标准库"log"为例,介绍如何在Debian系统中自定义日志输出。
main.go的文件,并添加以下代码:package main
import (
"log"
"os"
)
func main() {
// 创建一个日志文件
logFile, err := os.OpenFile("logs/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.SetPrefix("MyApp: ")
// 设置日志标志
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
// 输出日志
log.Println("This is an info log.")
log.Printf("This is a formatted %s log.", "info")
// 输出错误日志
log.SetPrefix("ERROR: ")
log.Println("This is an error log.")
}
go build -o myapp main.go
./myapp
logs的文件夹,里面有一个名为app.log的日志文件。打开该文件,你会看到类似以下的日志输出:2022/06/01 12:34:56 main.go:28: MyApp: This is an info log.
2022/06/01 12:34:56 main.go:29: MyApp: This is a formatted info log.
2022/06/01 12:34:56 main.go:32: ERROR: MyApp: This is an error log.
这样,你就成功地在Debian系统中自定义了Golang日志输出。你可以根据需要调整日志文件名、路径、前缀和标志等设置。