美文网首页码农的世界Go语言千钻公会
Go语言之log(如何将日志写到指定文件里面)

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

作者: 灰常出色 | 来源:发表于2019-08-15 09:02 被阅读30次

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

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

    方法一:

    package main
    import (
            "log"
            "os"
            "time"
    )
    func init() {
            file := "./" +"message"+ ".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("[qSkipTool]")
            log.SetFlags(log.LstdFlags | log.Lshortfile | log.LUTC)
            return
    }
    
    func main() {
            log.Println("Hello Davis!") // log 还是可以作为输出的前缀
            return
    }
    

    output:

    // message.txt里面 显示
    [qSkipTool]2019/07/05 11:49:05 log.go:24: Hello Davis!   
    

    方法二:

    package main
    
    import (
            "log"
            "os"
            "time"
    )
    var loger *log.Logger
    
    func init() {
            file := "./" + time.Now().Format("20180102") + ".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, "[qSkiptool]",log.LstdFlags | log.Lshortfile | log.LUTC) // 将文件设置为loger作为输出
            return
    }
    
    func main() {
            loger.Println("Hello:Davis!") // 使用的时候,需要采用loger作为输出的前缀
            return
    }
    
    

    output:

    // message.txt里面 显示
    [qSkipTool]2019/07/05 11:51:20 log.go:24: Hello Davis!
    ``
    
    灰子作于二零一九年八月十一日。

    相关文章

      网友评论

        本文标题:Go语言之log(如何将日志写到指定文件里面)

        本文链接:https://www.haomeiwen.com/subject/tplyhctx.html