mirror of
https://github.com/krau/SaveAny-Bot.git
synced 2026-05-11 23:49:58 +08:00
feat: init commit
This commit is contained in:
40
logger/logger.go
Normal file
40
logger/logger.go
Normal file
@@ -0,0 +1,40 @@
|
||||
package logger
|
||||
|
||||
import (
|
||||
"github.com/krau/SaveAny-Bot/config"
|
||||
|
||||
"github.com/gookit/slog"
|
||||
"github.com/gookit/slog/handler"
|
||||
"github.com/gookit/slog/rotatefile"
|
||||
)
|
||||
|
||||
var L *slog.Logger
|
||||
|
||||
func InitLogger() {
|
||||
if L != nil {
|
||||
return
|
||||
}
|
||||
slog.DefaultChannelName = "SaveAnyBot"
|
||||
L = slog.New()
|
||||
logLevel := slog.LevelByName(config.Cfg.Log.Level)
|
||||
logFilePath := config.Cfg.Log.File
|
||||
logBackupNum := config.Cfg.Log.BackupCount
|
||||
var logLevels []slog.Level
|
||||
for _, level := range slog.AllLevels {
|
||||
if level <= logLevel {
|
||||
logLevels = append(logLevels, level)
|
||||
}
|
||||
}
|
||||
consoleH := handler.NewConsoleHandler(logLevels)
|
||||
fileH, err := handler.NewTimeRotateFile(
|
||||
logFilePath,
|
||||
rotatefile.EveryDay,
|
||||
handler.WithLogLevels(slog.AllLevels),
|
||||
handler.WithBackupNum(logBackupNum),
|
||||
handler.WithBuffSize(0),
|
||||
)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
L.AddHandlers(consoleH, fileH)
|
||||
}
|
||||
Reference in New Issue
Block a user