golang日誌框架 logrus學習筆記

2022-07-01 10:27:06 字數 1370 閱讀 6277

golang標準庫的日誌框架非常簡單,僅僅提供了print,panic和fatal三個函式,對於更精細的日誌級別、日誌檔案分割以及日誌分發等方面並沒有提供支援。所以催生了很多第三方的日誌庫,而logrus就是其中的一款第三方日誌庫,它的功能強大,效能高效,而且具有高度靈活性,提供了自定義外掛程式的功能。

1.logrus的特性2.logrus的使用

package main

import (

log "github.com/sirupsen/logrus" //這個日誌依賴庫,需要使用

)func main() ).info("描述資訊為golang日誌框架logrus的學習")

}

控制台列印輸出為:

logrus與golang標準庫日誌模組完全相容,因此可以使用log "github.com/sirupsen/logrus"替換所有日誌匯入。 logrus還可以通過簡單的配置,來定義輸出、格式或者日誌級別等。

3.設定日誌輸出格式,日誌級別等資訊

)func initlog() )//設定日誌的輸出格式為json格式,還可以設定為text格式

log.setoutput(os.stdout)//設定日誌的輸出為標準輸出

log.setlevel(log.infolevel)//設定日誌的顯示級別,這一級別以及更高階別的日誌資訊將會輸出

}func main() ).info("描述資訊為golang日誌框架logrus的學習")

log.withfields(log.fields).warn("hello this is warn level") //警告級別

log.withfields(log.fields).fatal("the ice breaks!")//最高端別,致命資訊

}4.使用日誌例項的方式使用日誌

log.withfields(logrus.fields).info("將日誌資訊輸出到檔案中")

}以上就是logrus日誌框架的簡單了解和使

Golang學習日誌

變數賦值 golang中所有的變數都是值賦值,那麼陣列 chan map等,需要make的物件是怎麼操作的?自測發現 這些需要make的物件是引用賦值,也就是說新變數和舊變數操作的是同乙個記憶體空間。但是我們自己定義的struct都會把裡面的成員乙個乙個的複製過去。如果我們struct裡有陣列 ch...

golang學習日誌 19 12 6

利用函式strconv.atoi 返回 乙個是轉換結果,乙個是是否轉換成功 strconv.atoi str 練習1 判斷是否是素數 package isprime import fmt func isprimenumber i int bool return flag func main if f...

Golang基礎 日誌管理

所有日誌資訊列印時都帶有時間,且顏色為紅色 每種級別日誌列印都提供了三個函式 日誌擴充套件名為log func println v inte ce log.println 列印日誌資訊 panicln is equivalent to println followed by a call to pa...