go语言有没有办法记录不同级别的多个输出?
我想要一个程序,它可以同时记录到信息级别的标准输出和带有时间戳的调试级别的文件。
就像我每次编码一样:
log.Debug("Entering some func")
res := func()
log.Infof("Result was: %s", res)
我可以看到控制台打印:
Result was: Successful
和一个文件:
2015-03-26T01:27:38-04:00 [DEBU]: Entering some func
2015-03-26T01:27:38-04:00 [INFO]: Result was: Successful
我使用 logrus 和 glog,但找不到这个功能。还有其他包或者我可以编码的东西吗?
在寻找登录到多个目的地的方法时发现了这一点。
如果这就是您所需要的并且不担心日志级别,最简单的方法是使用io.Multiwriter
:
multi := io.MultiWriter(file, os.Stdout)
log.SetOutput(multi)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)