~ knotless Search/
↑↓ move↵ open⇧↵ all results
0
0
main
22 lines · 435 B Raw History
package logx

import (
	"fmt"
	"log/slog"
	"strings"
)

func ParseLevel(raw string) (slog.Level, error) {
	switch strings.ToLower(strings.TrimSpace(raw)) {
	case "", "info":
		return slog.LevelInfo, nil
	case "debug":
		return slog.LevelDebug, nil
	case "warn", "warning":
		return slog.LevelWarn, nil
	case "error":
		return slog.LevelError, nil
	default:
		return 0, fmt.Errorf("%q is not one of debug, info, warn, error", raw)
	}
}