golang 日志模块(log)

直立猿 · · 1362 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

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


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:直立猿

查看原文:golang 日志模块(log)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1362 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传