package log import ( "flag" "log/slog" "os" ) func Logger() { // Get logger arguments var loglevelStr string flag.StringVar(&loglevelStr, "loglevel", "ERROR", "set log level") flag.Parse() loglevel := new(slog.LevelVar) if loglevelStr == "DEBUG" { loglevel.Set(slog.LevelDebug) } else if loglevelStr == "INFO" { loglevel.Set(slog.LevelInfo) } else if loglevelStr == "WARN" { loglevel.Set(slog.LevelWarn) } else { loglevel.Set(slog.LevelError) } // Start logger logger := slog.New(slog.NewJSONHandler(os.Stdout, &slog.HandlerOptions{ Level: loglevel, })) slog.SetDefault(logger) slog.Debug("Logging started", "level", loglevel) }