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. Copy Books II

    Description Given n books and each book has the same number of pages. There are k persons to copy th ...

  2. guava字符串工具--------Joiner 根据给定的分隔符把字符串连接到一起

    public class JoinerTest { public static void main(String args[]){ //1.将list字符串集合,以,形式转为字符串 List<S ...

  3. 04_Logstash安装

    Logstash部署 1.部署JDK环境 2.下载Logstash源码包 $ wget https://artifacts.elastic.co/downloads/logstash/logstash ...

  4. 如何将web转化成应用程序?

    nativefier  最近无意中发现这个开源项目,Nativefier,看着它的项目介绍,以及1w+ 的 Star,感觉自己错过了一个世纪. 介绍 Nativefier是一个命令行工具,可以轻松地为 ...

  5. PHP全栈学习笔记29

    前言 这一章主要讲一讲PHP的背景,优势,PHP的环境搭建,书写和调式简单的PHP代码,如何解决简单的PHP错误等. 目录结构 PHP简介 PHP是面向对象,指令式编程,设计者是 拉斯姆斯·勒多夫 出 ...

  6. centos7 浏览器(firefox)中文乱码

    主要问题在于firefox用了系统没有的字体 百度的方案: 通过yum安装中文字体 (找不到对应的库) 修改firefox的默认字体(尴尬.不知道改哪个才有效) 粗暴的解决方案: 把 windows ...

  7. codeforces193B

    CF193B Xor sol:发现好像非常不可做的样子,发现n,u都很小,大胆dfs,因为异或偶数次毫无卵用,只要判每次是否做2操作就是了,复杂度O(可过) #include <bits/std ...

  8. oop 编程是什么?

    面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构.OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成.

  9. python eval的用法

    >>>x = >>> eval( '3 * x' ) >>> eval('pow(2,2)') >>> eval('2 + 2' ...

  10. redis消息提醒设计方案细则

    ----需求明细: 现有多个角色,角色间需要交互,内容分为申请,审核通过,拒绝,解除合作.每个角色进入自己后台显示查看其他角色的未读消息个数,点击进入显示所有发送来的内容.最开始只存储未读个数,并不知 ...