mirror of https://github.com/usememos/memos
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
597 B
Go
29 lines
597 B
Go
package main
|
|
|
|
import (
|
|
"io"
|
|
"log/slog"
|
|
"strings"
|
|
|
|
"github.com/pkg/errors"
|
|
)
|
|
|
|
func parseSlogLevel(s string) (slog.Level, error) {
|
|
switch strings.ToLower(s) {
|
|
case "debug":
|
|
return slog.LevelDebug, nil
|
|
case "info":
|
|
return slog.LevelInfo, nil
|
|
case "warn":
|
|
return slog.LevelWarn, nil
|
|
case "error":
|
|
return slog.LevelError, nil
|
|
default:
|
|
return slog.LevelInfo, errors.Errorf("unknown log level %q: must be debug, info, warn, or error", s)
|
|
}
|
|
}
|
|
|
|
func newLogger(level slog.Level, w io.Writer) *slog.Logger {
|
|
return slog.New(slog.NewTextHandler(w, &slog.HandlerOptions{Level: level}))
|
|
}
|