go使用logrus同时输出屏幕和文件日志

func InitLog() {
   //设置输出样式,自带的只有两种样式logrus.JSONFormatter{}和logrus.TextFormatter{}
   log.SetFormatter(&log.TextFormatter{})
   log.SetOutput(os.Stdout)
   //设置output,默认为stderr,可以为任何io.Writer,比如文件*os.File
    file, err := os.OpenFile("checkemstools.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
    writers := []io.Writer{
       file,
       os.Stdout}
   //同时写文件和屏幕
    fileAndStdoutWriter := io.MultiWriter(writers...)
   if err == nil {
      log.SetOutput(fileAndStdoutWriter)
   } else {
      log.Info("failed to log to file.")
   }
   //设置最低loglevel
   log.SetLevel(log.InfoLevel)
}
————————————————
版权声明:本文为CSDN博主「xiaowhy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/XiaoWhy/article/details/107209317

  

posted @ 2022-04-15 16:30  浮尘微光  阅读(1188)  评论(0编辑  收藏  举报