zoukankan      html  css  js  c++  java
  • Go gin 日志文件的分割

    当服务器常年运行的时候,日志文件就会非常的大,这里讲下用 gin 框架如果切割日志文件,代码如下:

    package main
    
    import (
    	"github.com/gin-gonic/gin"
    	 rotatelogs "github.com/lestrrat-go/file-rotatelogs"
    	"time"
    	"io"
    )
    
    func main() {
        // 禁用控制台颜色
        gin.DisableConsoleColor()
     
        // 创建记录日志的文件
        path := "gin"
        writer, _ := rotatelogs.New(
            path+"%Y%m%d%H%M.log",
            rotatelogs.WithLinkName(path),
            rotatelogs.WithMaxAge(time.Duration(180)*time.Second),
     
            //这里设置1分钟产生一个日志文件
            rotatelogs.WithRotationTime(time.Duration(60)*time.Second),
        )
    
    
       
        gin.DefaultWriter = io.MultiWriter(writer)
     
        // 如果需要将日志同时写入文件和控制台,请使用以下代码
        // gin.DefaultWriter = io.MultiWriter(writer, os.Stdout)
     
        router := gin.Default()
        router.GET("/", func(c *gin.Context) {
            c.String(200, "hello gin")
        })
     
        router.Run(":8080")
    }
    

      

  • 相关阅读:
    软件测试人员的要求
    冒烟测试和回归测试的区别
    [go]struct
    [go]socket编程
    [go]gorhill/cronexpr用go实现crontab
    [go]os/exec执行shell命令
    [go]time包
    [go]etcd使用
    [go]redis基本使用
    [go]go操作mysql
  • 原文地址:https://www.cnblogs.com/ser0632/p/14537090.html
Copyright © 2011-2022 走看看