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
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

golang 日志模块(log)的更多相关文章

  1. 设计自用的golang日志模块

    设计自用的golang日志模块 golang的原生日志模块不能满足需求,而开源的第三方包,也不完全够用.用户较多的logrus,却没有rotate功能,这已经是众所周知的.对于运维来说,当然是希望日志 ...

  2. 包,logging日志模块,copy深浅拷贝

    一 包 package 包就是一个包含了 __init__.py文件的文件夹 包是模块的一种表现形式,包即模块 首次导入包: 先创建一个执行文件的名称空间 1.创建包下面的__init__.py文件的 ...

  3. golang基础学习---log

    package main import ( "log" ) func init() { log.SetPrefix("TRACE: ") log.SetFlag ...

  4. golang日志框架--logrus学习笔记

    golang日志框架--logrus学习笔记 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数,对于更精细的日志级别.日志文件分割以及日志分发等方面并没有提供 ...

  5. Golang 标准库log的实现

      原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://gotaly.blog.51cto.com/8861157/1406905 前 ...

  6. 【Gin-API系列】Gin中间件之日志模块(四)

    日志是程序开发中必不可少的模块,同时也是日常运维定位故障的最重要环节之一.一般日志类的操作包括日志采集,日志查询,日志监控.日志统计等等.本文,我们将介绍日志模块在Gin中的使用. Golang如何打 ...

  7. 【腾讯Bugly干货分享】微信mars 的高性能日志模块 xlog

    本文来自于腾讯bugly开发者社区,未经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/581c2c46bef1702a2db3ae53 Dev Club 是一个交流移动 ...

  8. Python 日志模块 logging通过配置文件方式使用

    vim logger_config.ini[loggers]keys=root,infoLogger,errorlogger [logger_root]level=DEBUGhandlers=info ...

  9. 搭建一套自己实用的.net架构(2)【日志模块-log4net】

    先谈谈简单的模块,日志.在系统中日志模块是必须的,什么系统日志,操作日志,调试日志.这里用的是log4net. 对log4net还不熟悉的小伙伴们赶快去搜索基础教程哦, 我这里就不温故了. 那么有人要 ...

随机推荐

  1. BZOJ2155(?) R集合 (卡特兰数)

    Orz Freopen大佬 CODE fac = [0]*1005 def C(n, m): return fac[n] // fac[m] // fac[n-m] n = int(input()) ...

  2. 31、[源码]-AOP原理-AnnotationAwareAspectJAutoProxyCreato机

    31.[源码]-AOP原理-AnnotationAwareAspectJAutoProxyCreato机

  3. WebService操作

    webservice是一种服务器通信技术,封装了socket.

  4. IDEA八条配置修改

    IDEA版本:IntelliJ IDEA 2019.2.1 x64 八条配置修改: 自动编译开关 忽略大小写开关 智能导包开关 悬浮提示开关 取消单行显示tabs的操作 项目文件编码 滚轴修改字体大小 ...

  5. leetcode解题报告(16):Move Zeroes

    描述 Given an array nums, write a function to move all 0's to the end of it while maintaining the rela ...

  6. git 忽略文件 目录

    git status 这里面的iml文件类似 eclipse .project文件 ,不能删除 .删除就不能识别项目了. 通过git .gitignore文件 过滤 git status  gitig ...

  7. 容器网络启用RDMA高速通讯-Freeflow

    容器网络启用RDMA高速通讯-Freeflow 容器网络启用RDMA高速通讯-Freeflow 本文编译自: Freeflow,https://github.com/openthings/Freefl ...

  8. JavaEE三层架构与MVC

    JavaEE三层架构与MVC 摘要与总结 等下总结下 MVC模式 Model1 ​ 说到设计模式,不得不提一下之前的的Model1.据说早期对于java企业项目的开发,用的是Jsp+JavaBean的 ...

  9. hive on tez 错误记录

    1.执行过程失败,报 Container killed on request. Exit code is 143 如下图: 分析:造成这种原因是由于总内存不多,而容器在jvm中占比过高,修改tez-s ...

  10. zabbix (5) 用户、主机等创建

    1.创建新用户: 管理---> 用户--->创建用户 在右上角用户群组这里可以按下拉菜单,为某个组创建用户,默认是all 点击创建用户以后,出现如下图: 2.创建组 管理--->用户 ...