這是代碼:tmp, _ := os.OpenFile(filepath.Join(this.dirPath , "Log_"+time.Now().Format(conf.FormatFile())), os.O_CREATE|os.O_WRONLY, os.ModePerm)logrus.SetOutput(tmp)它可以工作,但是如果再次運(yùn)行程序并且已經(jīng)存在同名文件,則不會(huì)寫入它,沒(méi)有錯(cuò)誤,沒(méi)有寫入日志,僅此而已。在我看來(lái),這個(gè) os.ModePerm 標(biāo)志有些東西。該問(wèn)題僅在linux上重復(fù)。
1 回答

絕地?zé)o雙
TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可能應(yīng)該使用os.O_APPEND標(biāo)志。
tmp, _ := os.OpenFile(
filepath.Join(this.dirPath, "Log_"+time.Now().Format(conf.FormatFile())),
os.O_APPEND|os.O_WRONLY,
os.ModePerm,
)
https://godoc.org/os#pkg-constants
- 1 回答
- 0 關(guān)注
- 100 瀏覽
添加回答
舉報(bào)
0/150
提交
取消