小编典典

如何在golang中将消息记录到控制台和文件?

go

我可以将所有消息定向到log.txt文件:

logFile, err := os.OpenFile("log.txt", os.O_CREATE | os.O_APPEND | os.O_RDWR, 0666)
if err != nil {
    panic(err)
}
log.SetOutput(logFile)

但是我也如何在控制台中获取日志消息?


阅读 397

收藏
2020-07-02

共1个答案

小编典典

使用 io.MultiWriter

MultiWriter创建一个写入器,该写入器将其写入复制到所有提供的写入器中,类似于Unix tee(1)命令

mw := io.MultiWriter(os.Stdout, logFile)
log.SetOutput(mw)
2020-07-02