log

log包实现了简单的日志服务。

print

打印带时间的日志

func main() {
    log.Println("this is a log")
    log.Printf("%v \n", "log")
}

SetFlags

设置日志的抬头信息

func main() {
    log.Println("this is a log")
    log.SetFlags(log.Ldate | log.Llongfile)    // 设置日志的抬头信息
    log.Printf("%v \n", "log")
}

设置了Lmicroseconds,那么Ltime就不生效了;设置了Lshortfile, Llongfile也不会生效

如果设置了log.LUTC会把时间转为0时区的日期

SetPrefix

设置日志的前缀

func main() {
    log.SetPrefix("[普通日志]")
    log.Printf("%v \n", "log")
}

SetOutput

func SetOutput(w io.Writer)

日志输出位置

将日志写入文件

func main() {
    logFile, err := os.OpenFile("today.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
    if err != nil {
        fmt.Printf("open file failed err:%v", err)
        return
    }
    log.SetOutput(logFile)
    log.Print("this is a log")
}