當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Golang log.SetPrefix()用法及代碼示例

問題解決方法:

在這個程序中,我們將使用 SetPrefix() 函數在日誌文件的每一行中設置一個字符串作為前綴。在這裏,我們將使用 log.SetOutput() 和 log.Print() 函數將日誌寫入文件。

程序/源代碼:

下麵給出了演示 log.SetPrefix() 函數的源代碼。給定的程序在 ubuntu 18.04 操作係統上編譯和執行成功。

// Golang program to demonstrate the
// log.SetPrefix() function

package main

import "log"
import "os"
import "fmt"

func main() {
	filePtr, err:= os.OpenFile("mylogs.log", os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0666)
	if err != nil {
		log.Fatal(err)
	}

	log.SetPrefix("#####-> ")
	//Set log output to the "mylogs.log" file.
	log.SetOutput(filePtr)

	log.Print("Log line1")
	log.Print("Log line2")

	filePtr.Close()

	fmt.Println("Program finished")
}

輸出:

$ go run hello.go 
Program finished
[email protected]:~/Downloads$ cat mylogs.log 
#####-> 2021/04/20 01:54:38 Log line1
#####-> 2021/04/20 01:54:38 Log line2

說明:

在上麵的程序中,我們聲明了包 main。 main 包用於告訴 Go 語言編譯器必須編譯該包並生成可執行文件。在這裏,我們導入了 "fmt" 包以使用 Println() 函數,我們還導入了 "log" 包以使用日誌函數。

在 main() 函數中,我們使用 os.OpenFile() 函數打開或創建文件。然後我們使用 log.SetOutput() 函數將日誌的輸出設置到創建的文件中,並使用 log.SetPrefix() 函數為日誌文件的每一行設置前綴字符串。之後,我們在控製台屏幕上使用 fmt.Println() 函數打印 "Program finished" 消息。





相關用法


注:本文由純淨天空篩選整理自 Golang program to demonstrate the log.SetPrefix() function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。