golang的logrus庫,會進行標準輸出。如果把日誌輸出到es上,不需要再進行標準化輸出,可以用方法如下:
logger := logrus.new()
if err != nil
writer := bufio.newwriter(src)
logger.setoutput(writer)
client, err := elastic.newclient(elastic.setsniff(false), elastic.seturl(esurl))
if err != nil
localip, err := public.localip()
if err != nil
hook, err := elogrus.newelastichook(client, localip.string(), level, esindex)
if err != nil
logger.hooks.add(hook)
return logger, nil
其中,取消標準化輸出的關鍵部分是:
if err != nil
writer := bufio.newwriter(src)
logger.setoutput(writer)
golang學習筆記 日誌庫 logrus
官方自己宣傳的最大亮點是 結構化。logrus的github位址 lfshook的github位址 file rotatelogs的github位址 pkg errors的github位址 這個日誌依賴庫,需要使用 func main info 描述資訊為golang日誌框架logrus的學習 設定...
golang日誌框架 logrus學習筆記
golang標準庫的日誌框架非常簡單,僅僅提供了print,panic和fatal三個函式,對於更精細的日誌級別 日誌檔案分割以及日誌分發等方面並沒有提供支援。所以催生了很多第三方的日誌庫,而logrus就是其中的一款第三方日誌庫,它的功能強大,效能高效,而且具有高度靈活性,提供了自定義外掛程式的功...
golang日誌庫logrus的安裝和使用
一 安裝logrus 執行如下命令,即可按照logrus 如果無法訪問 golang 那麼可以先 clone github.com golang的原始碼,然後生成 cd gopath src golang.org x git clone go get u golang.org x crypto ss...