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

我可以将所有消息定向到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)

但是我怎样才能在控制台中获取日志消息呢?


繁花如伊
浏览 111回答 1
1回答

慕无忌1623718

使用 io.MultiWriterMultiWriter 创建一个写入器,将其写入复制到所有提供的写入器,类似于 Unix tee(1) 命令logFile, err := os.OpenFile("log.txt", os.O_CREATE | os.O_APPEND | os.O_RDWR, 0666)if err != nil {    panic(err)}mw := io.MultiWriter(os.Stdout, logFile)log.SetOutput(mw)唯一的变化是mw := io.MultiWriter(os.Stdout, logFile)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go