package logger import ( "log/slog" "os" "strings" ) // Logger envuelve slog.Logger type Logger struct { *slog.Logger } func (l *Logger) Fatalf(s string, err error) { panic("unimplemented") } // parseLevel convierte string → slog.Level func parseLevel(level string) slog.Level { switch strings.ToUpper(level) { case "DEBUG": return slog.LevelDebug case "INFO": return slog.LevelInfo case "WARN", "WARNING": return slog.LevelWarn case "ERROR": return slog.LevelError default: return slog.LevelInfo } } func New(level string, service string) *Logger { handler := slog.NewJSONHandler(os.Stdout, &slog.HandlerOptions{ Level: parseLevel(level), }) base := slog.New(handler).With( "service", service, ) return &Logger{base} }