Golang日誌 Seelog的簡單用法

2021-06-28 20:05:18 字數 986 閱讀 5951

beego自帶的log包雖然功能比較完善,但是在日誌中會帶上日誌級別的時間戳,而且這個時間戳還刪除不了。

因為專案需要,所以研究了下golang中其他的日誌包,發現seelog正好能滿足俺們專案的需要,因此在這做簡單介紹。

seelog功能強大,在此簡單介紹將日誌配置儲存在xml檔案中,並從檔案中獲取配置,然後使用的流程。

在controllers包的某個檔案中:

mainlog, _ = seelog.loggerfromconfigasfile("conf/seelog-main.xml")
loggerfromconfigasfile會從後面的檔案中獲取日誌配置,如上則是從conf包的seelog-main.xml檔案中獲取配置;

seelog-main.xml檔案內容如下:

其中:

outputs裡面是日誌的配置,formats裡面是日誌輸出格式配置。

formatid對應下面的formats裡對應id的輸出格式。

buffered指的是緩衝設定:

size--緩衝區大小,單位byte;flushperiod--緩衝間隔,單位ms

rollingfile裡面是日誌的設定:

type--回滾的方式,date指按日期回滾,size指按大小回滾

filename--檔案路徑

datepattern--日期的格式,按日期回滾時才會有此選項

maxrolls--日誌儲存的最大期限,此處會儲存30天以內的日誌

format裡面:

id--對應的outputs的formatid

format--日誌輸出的格式,%msg%n表示只會輸出日誌並換行

使用的時候,如下:

defer mainlog.flush()

mainlog.info("需要輸入的日誌")

即可。以後會完善seelog的用法

golang 日誌庫seelog 筆記

之前做服務的時候一直在用seelog作為日誌輸出的庫,用了一段時間發現還是挺好用的,最近有時間就來總結一下。我這邊用到的seelog一般都是將程式中的一些資訊輸入到日誌檔案中,方便除錯和維護程式。日誌中輸出的基本資訊有時間,日誌等級,行數,方法名等等。輸出日誌的格式是通過xml配置檔案完成的,這樣日...

Golang的日誌處理

整個看了一圈下來,感覺golang的日誌包在管理多執行緒安全的情況下,提供了最小粒度的工具。並沒有提供什麼複雜的過濾器之類的生成。實現了乙個demo來記錄一下日誌分類日誌列印等實現 package main import log os io ioutil io var trace log.logge...

Golang學習日誌

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