[golang] logrus的簡單封裝

在大型項目中,使用logrus進行日誌打印,如不加一些如[usecase.CreateUser]前綴,將會很難定位到打印日誌的代碼位置。故liamylian/logrus-ext借鑑了python的logging模塊,對logrus進行了簡單封裝。從而能夠在日誌中打印當前的模塊名和調用函數名。python

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/liamylian/logrus-ext.(*db).QueryTask" name=usecase
err := errors.New("too many connection")
log.WithError(err).Errorf("query task error: id=%d", id)
相關文章
相關標籤/搜索