golang 使用 loguru

loguru 地址:https://github.com/sirupsen/logrus

安装:

go install -u https://github.com/sirupsen/logrus

使用:

package main

import (
	"io"
	"os"

	log "github.com/sirupsen/logrus"
)

func main() {

	// 创建输出器
	writer1 := os.Stdout // 输出到控制台
	// 输出到文件
	writer2, err := os.OpenFile("log.txt", os.O_WRONLY|os.O_CREATE|os.O_APPEND, 0755)
	if err != nil {
		log.Fatalf("create file log.txt failed: %v", err)
	}

	// 设置格式化器,使用 json格式化器,日志将以json格式打印出来。
	log.SetFormatter(&log.JSONFormatter{TimestampFormat: "2006-01-02 15:04:05.000"}) // 设置为 JSON 格式
	// log.SetFormatter(&log.TextFormatter{ForceColors: true, ForceQuote: true, FullTimestamp: true, TimestampFormat: "2006-01-02 15:04:05.000"})
	log.SetLevel(log.TraceLevel) // 设置日志级别为 Info
	log.SetOutput(io.MultiWriter(writer1, writer2))

	// 打印日志
	log.Trace("trace msg")
	log.Debug("debug msg")
	log.Info("info msg")
	log.Warn("warn msg")
	log.Error("error msg")
	log.Fatal("fatal msg")
	log.Panic("panic msg")

	// 添加属性值到日志器上
	tlog := log.WithFields(log.Fields{
		"thread_id": 1,
	})
	tlog.Trace("trace msg")
	tlog.Debug("debug msg")
	tlog.Info("info msg")
	tlog.Warn("warn msg")
	tlog.Error("error msg")
	tlog.Fatal("fatal msg")
	tlog.Panic("panic msg")
}
posted @ 2025-07-08 20:21  灵火  阅读(17)  评论(0)    收藏  举报