refactor: remove log-format flag
This commit is contained in:
parent
67b2c9b1f3
commit
d9a1e50f49
2 changed files with 10 additions and 42 deletions
13
cmd/root.go
13
cmd/root.go
|
|
@ -40,16 +40,7 @@ var (
|
|||
level = slog.LevelError
|
||||
}
|
||||
|
||||
logFormat, _ := flags.GetString("log-format")
|
||||
var format logger.Format
|
||||
switch logFormat {
|
||||
case "text":
|
||||
format = logger.FormatText
|
||||
case "json":
|
||||
format = logger.FormatJson
|
||||
}
|
||||
|
||||
if err := logger.Load(format, level); err != nil {
|
||||
if err := logger.Load(level); err != nil {
|
||||
return fmt.Errorf("failed to load logger: %w", err)
|
||||
}
|
||||
|
||||
|
|
@ -81,7 +72,5 @@ func init() {
|
|||
flags := rootCmd.Flags()
|
||||
flags.StringP("token", "t", "", "authentication token")
|
||||
flags.StringP("config", "c", config.DefaultPath(), "path of the configuration file")
|
||||
|
||||
flags.String("log-level", "info", "log level")
|
||||
flags.String("log-format", "text", "log format")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,15 +8,8 @@ import (
|
|||
"github.com/ayn2op/discordo/internal/consts"
|
||||
)
|
||||
|
||||
type Format int
|
||||
|
||||
const (
|
||||
FormatText Format = iota
|
||||
FormatJson
|
||||
)
|
||||
|
||||
// Opens the log file and configures default logger.
|
||||
func Load(format Format, level slog.Level) error {
|
||||
// Load opens the log file and configures default logger.
|
||||
func Load(level slog.Level) error {
|
||||
path, err := os.UserCacheDir()
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
@ -27,28 +20,14 @@ func Load(format Format, level slog.Level) error {
|
|||
return err
|
||||
}
|
||||
|
||||
opts := &slog.HandlerOptions{AddSource: true, Level: level}
|
||||
|
||||
var h slog.Handler
|
||||
switch format {
|
||||
case FormatText:
|
||||
path := filepath.Join(path, "logs.txt")
|
||||
file, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY, os.ModePerm)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
h = slog.NewTextHandler(file, opts)
|
||||
case FormatJson:
|
||||
path := filepath.Join(path, "logs.jsonl")
|
||||
file, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY, os.ModePerm)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
h = slog.NewJSONHandler(file, opts)
|
||||
path = filepath.Join(path, "logs.txt")
|
||||
file, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY, os.ModePerm)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
slog.SetDefault(slog.New(h))
|
||||
opts := &slog.HandlerOptions{AddSource: true, Level: level}
|
||||
handler := slog.NewTextHandler(file, opts)
|
||||
slog.SetDefault(slog.New(handler))
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue