28 lines
511 B
Go
28 lines
511 B
Go
package logger
|
|
|
|
import (
|
|
"fmt"
|
|
"io"
|
|
"log"
|
|
"math"
|
|
"os"
|
|
"time"
|
|
|
|
"gopkg.in/natefinch/lumberjack.v2"
|
|
)
|
|
|
|
func newRollingWriter() io.Writer {
|
|
if err := os.MkdirAll("log", 0744); err != nil {
|
|
log.Println("不能创建用于保存日志的目录。")
|
|
return nil
|
|
}
|
|
|
|
now := time.Now()
|
|
return &lumberjack.Logger{
|
|
Filename: fmt.Sprintf("log/service_%s.log", now.Format("2006-01-02_15")),
|
|
MaxBackups: math.MaxInt, // files
|
|
MaxSize: 200, // megabytes
|
|
MaxAge: math.MaxInt, // days
|
|
}
|
|
}
|