gin基于logrus的日志+rotatelogs日志拆分的中间件
func Logger() gin.HandlerFunc {
filePath := "log/gin"
linkName := "latest_log.log"
src, _ := os.OpenFile(filePath, os.O_RDWR|os.O_CREATE, 0755)
logger := logrus.New()
logger.Out = src
logger.SetLevel(logrus.DebugLevel)
logWriter, _ := retalog.New(
filePath+"%Y%m%d.log",
retalog.WithMaxAge(config.MaxSaveTime*24*time.Hour),
retalog.WithRotationTime(config.LogDivideTime*time.Hour),
retalog.WithLinkName(linkName),
)
writeMap := lfshook.WriterMap{
logrus.InfoLevel: logWriter,
logrus.FatalLevel: logWriter,
logrus.DebugLevel

这篇博客介绍了如何在Gin框架中结合logrus库和rotatelogs工具,实现日志记录及按需拆分,确保全局异常捕获并返回自定义状态码。
最低0.47元/天 解锁文章
1060

被折叠的 条评论
为什么被折叠?



