log 日志
log 模块可以自定义log 对象, 也可以使用log默认对象的日志方法
func New 创建log对象
func New(out io.Writer, prefix string, flag int) *Logger
logs := log.New(os.Stdout, "lcoal Log:", 0)
设置获取日志属性
-
func Flags 获取标识
func (l *Logger) Flags() int
fmt.Println( logs.Flags() )
-
func SetFlags 设置标识
func (l *Logger) SetFlags(flag int)
logs.SetFlags( 10 )
-
func Prefix 获取信息前缀
func (l *Logger) Prefix() string
logs.Prefix()
-
func SetPrefix 设置信息前缀
func (l *Logger) SetPrefix(prefix string)
logs.SetPrefix("err:")
日志输出
-
func Printf 输出格式化信息
func (l *Logger) Printf(format string, v ...interface{})
logs.Printf("nickname|%s age|%d", user.nickname, user.age)
-
func Println 带换行输出
func (l *Logger) Println(v ...interface{})
-
func Print 普通输出
func (l *Logger) Print(v ...interface{})
输出并退出
-
func Fatal 输出信息后将退出进程
func (l *Logger) Fatal(v ...interface{}) // 等价 { logs.Println(info); os.Exit(1) }
-
func Fatalf 输出格式化信息后退出进程
func (l *Logger) Fatalf(format string, v ...interface{})
-
func Fatalln 输出信息后将退出进程
func (l *Logger) Fatalln(v ...interface{})
输出并 Panic
-
func Panic
func (l *Logger) Panic(v ...interface{})
-
func Panicf
func (l *Logger) Panicf(format string, v ...interface{})
-
func Panicln
func (l *Logger) Panicln(v ...interface{})
使用模块方法
// 除了新建自定义日志对象,也可以直接通过log使用相关方法.
// 模块方法只是多出了 func SetOutput 用来设置日志输出
log.SetOutput(os.Stdout)
log.Println("run server")
// >>> 2019/06/05 00:15:44 run server
作者:直立猿
链接:https://www.jianshu.com/p/cb689fb715f9
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。