带你入门Go:Log日志模块

xiaoxiao2021-02-28  116

Log模块主要三类方法 Print() 用于输出日志 Fatal() 输出日志的同时,调用os.Exit(1)方法退出,小提示:如果函数下存在defer不会执行 Panic() 输出日志的同时,调用panic方法 跟fmt.Print不同的地方在于,fmt.Print,fmt.Fatal,fmt.Pacni属于Stdout输出,log.Print属于Stderr输出 Log模块写入文件 New() 自定义log文件,将输出数据输入log文件 设置日志前缀 设置日志格式 Ldate 2017/01/01 Ltime 12:01:10 Lmicroseconds 12:01:10.605536 Llongfile go_pro/src/log/Log.go:45 Lshortfile Log.go:45 *Logger.Print() *Logger.Fatal() *Logger.Panic() package main import ( "log" "fmt" "os" ) func main() { sayPrint() sayFalal() sayPanic() newLog() //fmt.Print("fmt print") //Stdout } func sayPrint() { log.Print("sayPrint") //Stderr } func sayFalal() { defer fmt.Println("end") log.Fatal("sayFalal") } func sayPanic() { defer fmt.Println("end") log.Panic("sayOne") } func newLog() { //创建日志文件 fileName := "app.log" logFile, err := os.Create(fileName) if err != nil { panic(err) } defer logFile.Close() //自定义输出日志 //Ldate Ltime log := log.New(logFile, "[Info]", log.Ldate|log.Lmicroseconds|log.Llongfile) log.Println("newLog") }
转载请注明原文地址: https://www.6miu.com/read-30533.html

最新回复(0)