由於Go 語言中沒有自帶的宏, 來表示行號和文件, 須要從方法中去獲取,麻煩.因此封裝了一個函數,用於輸出平時程序的打印日誌
import (
"fmt"
"log"
"net"
"runtime"
"strconv"
)
func AddLog(msg string) string {
_, _, line, ok := runtime.Caller(1)
s := ""
if ok {
// **第一種輸出格式**, 只有行號和自定義錯誤信息
s = "[Log] : [" + strconv.Itoa(line) + "]"
//輸出格式[Log] : [47] dial Ok
// **第二種輸出格式**, 包含當前LOG日誌的日期,行號,文件,自定義錯誤信息
//t := time.Now()
//s = "[Log] : " + t.String() + " " + file + ":" + strconv.Itoa(line)
//輸出格式爲: [Log] : 2017-03-17 13:45:38.4388648 +0800 CST F:/Go/src/socket_test_dial.go:45 dial Ok
}
msg = s + " " + msg
//logBuffer.Log = append(logBuffer.Log, msg)
return msg
}