Golang之log(如何将日志写到指定文件里面)

Golang之log(如何将日志写到指定文件里面)

依然范儿特西
2021-09-30 / 0 评论 / 15 阅读 / 正在检测是否收录...

对于Go语言的日志来说,如何将log写到指定的文件里面,下面是一个例子。

如何将log 写入到指定的文件中?

方法一:

package main
import (
    "log"
    "os"
    "time"
)
func init() {
    file := "./" +"log"+ ".txt"
    logFile, err := os.OpenFile(file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0766)
    if err != nil {
        panic(err)
    }
    log.SetOutput(logFile) // 将文件设置为log输出的文件
    log.SetPrefix("[logTool]")
    log.SetFlags(log.LstdFlags | log.Lshortfile | log.LUTC)
    return
}

func main() {
    log.Println("Hello laofan!") // log 还是可以作为输出的前缀
    return
}

output:

// message.txt里面 显示
[logTool]2021/09/30 15:30:05 log.go:24: Hello laofan!   

方法二:

package main

import (
    "log"
    "os"
    "time"
)
var loger *log.Logger

func init() {
    file := "./" + time.Now().Format("20210930") + ".txt"
    logFile, err := os.OpenFile(file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0766)
    if err != nil {
            panic(err)
    }
    loger = log.New(logFile, "[logTool]",log.LstdFlags | log.Lshortfile | log.LUTC) 
    // 将文件设置为loger作为输出
    return
}

func main() {
    // 使用的时候,需要采用loger作为输出的前缀
    loger.Println("Hello:laofan!") 
    return
}

output:

// message.txt里面 显示
[logTool]2021/09/30 15:35:20 log.go:24: Hello laofan!
``

灰子作于二零二一年九月三十日。
0

评论 (0)

取消