在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日志輸出。你可以根據需要調整日志文件名、路徑、前綴和標志等設置。