问题解决方法:
在这个程序中,我们将使用 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 log.SetOutput()用法及代码示例
- Golang log.SetFlags()用法及代码示例
- Golang log.Print()用法及代码示例
- Golang log.Fatal()用法及代码示例
- Golang log.Fatalf()用法及代码示例
- Golang log.Panic()用法及代码示例
- Golang log.Printf()用法及代码示例
- Golang log.Panicf()用法及代码示例
- Golang strconv.QuoteToASCII()用法及代码示例
- Golang io.CopyBuffer()用法及代码示例
- Golang reflect.Kind()用法及代码示例
- Golang time.Parse()用法及代码示例
- Golang bits.RotateLeft16()用法及代码示例
- Golang math.Ceil()用法及代码示例
- Golang atomic.AddInt32()用法及代码示例
- Golang strings.ToLowerSpecial()用法及代码示例
- Golang time.Time.MarshalJSON()用法及代码示例
- Golang io.Pipe()用法及代码示例
- Golang strings.EqualFold()用法及代码示例
- Golang reflect.FuncOf()用法及代码示例
注:本文由纯净天空筛选整理自 Golang program to demonstrate the log.SetPrefix() function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。