我在utils包的init()
方法中創建了全局Logger
。我應該關閉Go中的日誌文件嗎?
```
package utils
var Logger *log.Logger
func init() {
logFile, _ := config.Configure.String("log_file")
if len(logFile) == 0 {
appRoot, _ := os.Getwd()
logFile = filepath.Join(appRoot, "app_runtime.log")
}
f, err := os.OpenFile(logFile, os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0666)
//Look HERE!!!
if err != nil {
panic(err)
}
Logger = log.New()
//Log as JSON
Logger.Formatter = &log.JSONFormatter{}
//Output to stdout
//When production, use file
Logger.Out = f
// Only log the debug severity or above.
Logger.Level = log.DebugLevel
}
```
所以,我可以用這樣的:
utils.Logger.Info("This is debug info")
我的問題是:我應該關閉日誌文件?怎麼樣?
也許我不需要它,因爲句柄將關閉可執行文件退出? – Nil
你使用哪種記錄器包?標準的'log'軟件包不會導出其'out'成員。 – putu
https://github.com/sirupsen/logrus – Nil