[golang] logrus的简单封装

在大型项目中,使用logrus进行日志打印,如不加一些如[usecase.CreateUser]前缀,将会很难定位到打印日志的代码位置。故study-only/logrus-ext借鉴了python的logging模块,对logrus进行了简单封装。从而可以在日志中打印当前的模块名和调用函数名。

var log = Get("usecase", &Option{WithFunc: true})

// 输出:
//   time="2019-04-18T15:36:37+08:00" level=error msg="query task error: id=1" error="too many connection" 
//   func="github.com/study-only/logrus-ext.(*db).QueryTask" name=usecase
err := errors.New("too many connection")
log.WithError(err).Errorf("query task error: id=%d", id)
    原文作者:inspii
    原文地址: https://segmentfault.com/a/1190000019016824
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞