golang基礎 tailf日誌元件使用

2021-08-10 23:31:58 字數 1392 閱讀 8914

git上log日誌元件

我們寫個test來測試下這個元件

}}執行**會在終端輸出如下該檔案的資訊:

ps e:\golang\go_pro\src\safly> go run safly.go

msg: &

msg: &

92 +0800 cst }

msg: &

。。。。。。省略

我們看看原始碼tailf.go的執行流程:

func tailfile(filename string, config config) (*tail, error) 

t := &tail

// when logger was not specified in config, use default logger

if t.logger == nil

if t.poll else

if t.mustexist

}go t.tailfilesync()

return t, nil

}

在最後go t.tailfilesync()啟動goroutine

在tailfilesync方法中

tail.openreader()
看看做了什麼操作?

func (tail *tail) openreader()  else 

}

建立reader,然後for讀取line, err := tail.readline()

然後寫入chan 中

// process `line` even if err is eof.

if err == nil

select

if err := tail.seekend(); err != nil

}}

tail.lines <- &line中的lines是在tail定義的chan

type

tail struct

Golang基礎 日誌管理

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

tail f 實時檢視日誌檔案

taii 用於檢視檔案的內容,有乙個常用的引數 f 用於查閱正在改變的日誌檔案。tail f filename 會把filename檔案裡的最尾部內容顯示在螢幕上且不斷重新整理,只要filename更新就能看到最新的檔案內容 一 命令格式 tail 引數 檔案位址 二 引數 f 迴圈讀取 q 不顯示...

linux檢視日誌檔案tail f用法

tail linux中用於檢視檔案尾部的內容,與head相對應。尤其是對於日誌檔案較大的時候,通過tail指定輸出的行數來檢視日誌。輸出最後10行的內容 tail test.log 輸出最後10行的內容,同時監視檔案的變化,一旦變化就顯示出來 tail f test.log 輸出最後n行的內容,同時...