之前做服務的時候一直在用seelog作為日誌輸出的庫,用了一段時間發現還是挺好用的,最近有時間就來總結一下。
我這邊用到的seelog一般都是將程式中的一些資訊輸入到日誌檔案中,方便除錯和維護程式。日誌中輸出的基本資訊有時間,日誌等級,**行數,方法名等等。輸出日誌的格式是通過xml配置檔案完成的,這樣日誌內容的修改就不需要重新去編譯程式。seelog功能比較強大除了這些特性還可以按照過濾條件輸出,控制台輸出等,感興趣的同學可以去了解一下。鏈結如下,seelog
下面介紹一下seelog的相關配置,seelog中方法loggerfromconfigasfile()就是用來讀取配置檔案的,方法的引數為配置檔案的路徑。配置檔案格式為xml,下面舉個栗子:
其中,outputs 是對日誌的設定,format 是對輸出格式的設定
minlevel—為日誌輸出的最低的等級,可以通過調整日誌輸出等級來對日誌資訊做出篩選,這也要求在編碼時對日誌輸出的分類要明確。
rollingfile type—為日誌回滾的方式,例子中為按寫檔案的大小進行,也可按照日期進行,按日期的對應配置為date。而且按照日期配置的話需要在配置一下日期格式datepattern–例如「2016.07.19」
filename—檔案儲存的路徑
maxsize—檔案最多的行數
maxrolls–日誌儲存的最大期限,此處會儲存30天以內的日誌(這個時間我還沒有測過),如果是size的話就是檔案個數
formate中的格式為包含了日期,時間,檔名,行數,函式名,輸出的日誌資訊
這邊是寫了乙個使用的例子
需要注意的是結束的時候要用flush()函式
Golang日誌 Seelog的簡單用法
beego自帶的log包雖然功能比較完善,但是在日誌中會帶上日誌級別的時間戳,而且這個時間戳還刪除不了。因為專案需要,所以研究了下golang中其他的日誌包,發現seelog正好能滿足俺們專案的需要,因此在這做簡單介紹。seelog功能強大,在此簡單介紹將日誌配置儲存在xml檔案中,並從檔案中獲取配...
Golang專案之日誌庫
golang提供的日誌庫過於基礎,對於更精細的日誌級別 日誌檔案切割以及日誌分發等方面不提供支援,不適用於線上 生產環境,所以就催生了很多第三方日誌庫。1 日誌級別 debug info warn error fatal 2 日誌檔案還分為 標準日誌檔案 記錄debug info warn 和錯誤日...
golang學習筆記 日誌庫 logrus
官方自己宣傳的最大亮點是 結構化。logrus的github位址 lfshook的github位址 file rotatelogs的github位址 pkg errors的github位址 這個日誌依賴庫,需要使用 func main info 描述資訊為golang日誌框架logrus的學習 設定...