1. 项目地址:
    https://github.com/sirupsen/logrus

  2. 用法:

     package main
    
     import (
         "github.com/sirupsen/logrus"
         "os"
     )
    
     func initDefaultLog() {
         logrus.SetReportCaller(true) // 输出调用 logrus 的文件、方法名、行号
         logrus.SetFormatter(&logrus.TextFormatter{
             TimestampFormat: "2006-01-02 15:03:04", // 设置日志输出时间格式
         })
         //logrus.SetOutput(os.Stdout)  // 输出到控制台
         file, err := os.OpenFile("logs/default.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
         if err != nil {
             panic("logrus open file error:" + err.Error())
         }
         logrus.SetOutput(file) // 输出到文件
         logrus.SetLevel(logrus.TraceLevel)
     }
    
     func newLog(fileName string) *logrus.Logger {
         myLogrus := logrus.New()
         myLogrus.SetReportCaller(true) // 输出调用 logrus 的文件、方法名、行号
         myLogrus.SetFormatter(&logrus.TextFormatter{
             TimestampFormat: "2006-01-02 15:04:05", // 设置日志输出时间格式
         })
         //myLogrus.SetOutput(os.Stdout) // 输出到控制台
         file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
         if err != nil {
             panic("logrus open file error:" + err.Error())
         }
         myLogrus.SetOutput(file)                                    // 输出到文件
         level, err := logrus.ParseLevel(logrus.TraceLevel.String()) // trace/debug/info/warn/error/fatal/panic
         if err != nil {
             panic("logrus parse level error:" + err.Error())
         }
         myLogrus.SetLevel(level)
         return myLogrus
     }
    
     func main() {
         initDefaultLog() // 设置默认日志
         logrus.WithFields(logrus.Fields{
             "key1": "value1",
             "key2": 10,
         }).Info("this is a default log")
         infoLog := newLog("./logs/info.log") // 使用自定义日志
         infoLog.WithField("key", "value").Info("this is a info log")
         errLog := newLog("./logs/err.log") // 使用自定义日志
         errLog.WithField("key", "value").Error("this is a err log")
     }
文档更新时间: 2024-04-20 10:57   作者:lee