在 golang 中,可以通過標準庫 log 包來實現日志格式的個性化定制。下面這段代碼演示了如何設置自定義的日志格式:
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.Fatalf("無法打開日志文件: %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("這是一條自定義格式的日志消息") }
在這段代碼中,我們首先通過 os.OpenFile 函數創建或打開一個日志文件,并將該文件作為日志輸出的目標。接著,我們利用 log.SetOutput 方法更改默認的輸出位置。為了實現個性化的日志格式,我們先用 log.SetFlags(0) 清空原有的日志標志,隨后通過 log.SetPrefix 添加自定義的時間戳前綴。最后,重新啟用時間戳和文件路徑等標志。
執行此程序后,會在當前工作目錄生成一個名為 logs.txt 的日志文件,其中包含了按照我們設定的格式記錄的日志信息。