자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
Description: Parameter 0 of constructor in com.group.libraryapp.service.user.UserService required a bean of type 'com.group.libraryapp.repository.user.UserRepository' that could not be found. Action: Consider defining a bean of type 'com.group.libraryapp.repository.user.UserRepository' in your configuration. Disconnected from the target VM, address: '127.0.0.1:53718', transport: 'socket' Process finished with exit code 1 이게 계속 뜨면서 실행이 안됩니다 제발 도와주세요 ㅜㅜㅜㅠㅠ gpt에다가 물어봤는데도 안되어서 말씀드립니다
안녕하세요. 3-4 피쳐엔지니어링에 인코딩 부분에서 질문이 있습니다. 파일에선 범주형 칼럼을 추출하기 위해 X_train.columns[X_train.dtypes == object] 를 사용했는데 cols = X_ train.select _dtypes(include= "O").columns 로 해도 동일하게 작업이 가능한가요? 최대한 단순하게 외우고 싶어서 이게 가능하다면 select_dtypes() 사용하는걸로 외우려고요
EKS hands-on with CloudNet@의 " 4장 실습 프로메테우스와 그라파나 구성하기 " 에서 " 1.1. 프로메테우스 스택 설치 "의 " 프로메테우스 스택 설치 " 진행 후 " crd, servicemonitors, targetgroupbindings 확인 "의 "kubectl get targetgroupbindings -n monitoring" 명령어 조회 시, (admin@myeks:default) [root@myeks-bastion-EC2 ~]# kubectl get targetgroupbindings -n monitoring No resources found in monitoring namespace AWS Home Page의 EC2 Load balancers에서 Listener 조회 시, 443 Target 확인 되지 않는 현상. 상기 Issue의 Solution은 아래와 같습니다. (CloudNet@ Team의 노고에 감사 드립니다.) Prometheus Stack을 배포함과 동시에 ALB는 Listener를 지정 후 Targetgroup 정보를 수신 합니다. 이때, 실습에서 생성한 AWS Certification Manager (略 ACM) 정보를 기반으로 합니다. (AWS Console Home에서 " Certification Manager " 로 검색하여 찾을 수 있습니다.) 만일, 실습 진행 간 배포한 Stack을 삭제 후 재 생성 한 경우, ACM에 대한 기존의 생성 정보를 호출, 재차 변수로 반영하는 작업에서 추가로 생성 후 ACM을 변수로 반영하고자 하면 , 기존의 Issued 된 ACM이 추가 생성에 의한 Pending Validation 상태인 ACM을 기준으로 등록합니다. 또한, 재차 생성된 ACM은 Status가 변경 즉, Issued 가 되기까지 일정 시간이 소요 되며, 그 전에 Prometheus-stack 배포를 시도 할 경우, ACM 값을 호출하지 못하여 아래와 같이 표시 됩니다. ADDRESS (myeks-ingress-alb-123456789.ap-northeast-2.elb.amazonaws.com) 확인 불가 Every 2.0s: kubectl get pod,svc,ingress,pv,pvc -n monitoring NAME CLASS HOSTS ADDRESS PORTS AGE ingress.networking.k8s.io/kube-prometheus-stack-grafana alb grafana.example.net 80 6m57s ingress.networking.k8s.io/kube-prometheus-stack-prometheus alb prometheus.example.net 80 6m57s 따라서 ACM 메뉴에 진입하여 기존의 생성된 ACM을 전부 삭제 하고, ACM을 재차 생성하여 변수로 선언 , Prometheus-stack을 삭제 후 재 배포 시 성공적으로 주소가 할당 되는 것을 확인 할 수 있습니다. 재 생성 후 일정 시간 소요 시 Issued를 확인 하고, ACM 선언 및 변수 적용 절차를 재차 수행 합니다. // Prometheus stack & PV with PVC Uninstallation // (admin@myeks:default) [root@myeks-bastion-EC2 ~]# helm uninstall -n monitoring kube-prometheus-stack release "kube-prometheus-stack" uninstalled (admin@myeks:default) [root@myeks-bastion-EC2 ~]# kubectl delete pvc prometheus-kube-prometheus-stack-prometheus-db-prometheus-kube-prometheus-stack-prometheus-0 -n monitoring persistentvolumeclaim "prometheus-kube-prometheus-stack-prometheus-db-prometheus-kube-prometheus-stack-prometheus-0" deleted // ACM Renewing // (admin@myeks:default) [root@myeks-bastion-EC2 ~]# aws acm list-certificates { "CertificateSummaryList": [ { "CertificateArn": "arn:aws:acm:ap-northeast-2:398561966751:certificate/4a83d353-c8f1-4418-a007-3ad49eb5d7fd", "DomainName": "*.example.net", "SubjectAlternativeNameSummaries": [ "*.example.net" ], "HasAdditionalSubjectAlternativeNames": false, "Status": "ISSUED", "Type": "AMAZON_ISSUED", "KeyAlgorithm": "RSA-2048", "KeyUsages": [ "DIGITAL_SIGNATURE", "KEY_ENCIPHERMENT" ], "ExtendedKeyUsages": [ "TLS_WEB_SERVER_AUTHENTICATION", "TLS_WEB_CLIENT_AUTHENTICATION" ], "InUse": false, "RenewalEligibility": "INELIGIBLE", "NotBefore": "2024-05-22T09:00:00+09:00", "NotAfter": "2025-06-21T08:59:59+09:00", "CreatedAt": "2024-05-23T00:10:55.366000+09:00", "IssuedAt": "2024-05-23T00:13:12.752000+09:00" } ] } // ADDRESS VALIDATION // Every 2.0s: kubectl get pod,svc,ingress,pv,pvc -n monitoring NAME CLASS HOSTS ADDRESS PORTS AGE ingress.networking.k8s.io/kube-prometheus-stack-grafana alb grafana.example.net myeks-ingress-al b-123456789.ap-northeast-2.elb.amazonaws.com 80 20m ingress.networking.k8s.io/kube-prometheus-stack-prometheus alb prometheus.example.net myeks-ingress-al b-123456789.ap-northeast-2.elb.amazonaws.com 80 20m
4회 기출 유형(작업형2)까지 수강하였을 때, 제가 이해한 내용은 다음과 같습니다. <모델의 성능을 평가하는 방법> 데이터 분리 (X_tr, X_val, y_tr, y_val) → 모델 학습 & 하이퍼 파라미터 튜닝 → 평가 (f1 score, roc_auc_score 등) 하이퍼 파라미터 튜닝의 값을 조절해가며 평가 점수 확인 데이터 분리 없이, 모델 학습 & 하이퍼 파라미터 튜닝 → 교차검증 (cross_val_score) 이때 질문드립니다. 제가 이해한 대로, 모델의 성능을 평가하는 방법이 위의 2가지가 있는게 맞을까요? 강사님이 영상에서 교차검증을 사용한 이유는 문제에서 평가 방식을 '평가: Macro f1-score'라고 제시해주었기 때문인가요? 혹시 실제 시험 상황에서 평가 방식을 제시해주지 않는다면, 위의 2가지 방법 중 어떤 것을 사용해도 상관이 없는건가요?
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
문제 3번 풀던 중 생긴 오류를 잡으면서 생긴 의문입니다. DTO에 List를 만들어서 JSON 배열을 POST형식의 body로 받는 문제였습니다. 아래는 변수를 final로 선언했을 때 생기는 오류입니다. ERROR 8512 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageConversionException: Type definition error 선언하는 방식에 문제가 없다고 여겨 수정해보다가 final과 constructor를 지우고 다시 요청을 날려보니 정상적인 값의 출력을 확인했습니다. 이 final과 constructor 이 무슨 역할을 하고 있는지, 왜 final로 선언되었을 때는 오류가 났는지, 언제 사용되어야 하는지 등 검색을 해보지만 잘 이해가 되지 않아서 질문 남깁니다.
ECS FARGATE 생성시 ALB 생성에서 자꾸 에러가 발생해서 질문드립니다. 로그를 타고 들어가보니 서버동작은 올바르게 되는 것으로 보이는데, 로드밸런서의 타겟그룹이 unhealthy가 되네요. vpc는 자동생성 마법사로 생성한 것으로 가용역역 a,b에 각각 private/public 서브넷이 한개씩 존재하는 형태입니다. 검색을 해보니 이 형태로는 alb 부착이 안되는 것 같아서 Nat게이트웨이를 연결해서 private 서브넷으로 시도 해봤는데 차도가 없네요. vpc와 서브넷에 대한 이해가 부족하여 질문드립니다. 혹시 alb 부착을 위한 간단한 가이드라인을 주실 수 있을까요? 이미 완성되어 있는 프로젝트를 배포하는 거라 redis cloud를 사용중인데 이 경우 redis service는 하지 않아도 되는지 궁금합니다. 일단 cicd는 제쳐두고 dockerfile 환경변수를 직접 정의해 놓아 github에 올리지 않은 상태입니다.
안녕하세요! Spring Security 적용하는 강의를 보면서 제가 사용하는 스프링 버전에 맞춰서 진행을 하고 있는데 defaultSuccessUrl 설정하는 부분에서 오류가 발생하여 해결을 하긴 했으나, 이상한 것 같아서 질문 드립니다. 기본적으로 SecurityConfig.java 코드는 다음과 같이 동일하게 작성해주었습니다. @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { return http .csrf(AbstractHttpConfigurer::disable) .authorizeHttpRequests(registry -> registry .requestMatchers("/auth/login").permitAll() .anyRequest().authenticated()) .formLogin(configurer -> configurer .loginPage("/auth/login") .loginProcessingUrl("/auth/login") .usernameParameter("username") .passwordParameter("password") .defaultSuccessUrl("/")) .userDetailsService(userDetailsService()) .build(); } 다음과 같이 Bean 등록을 통해 로그인을 성공하였을 경우, "/" 경로의 Controller를 호출하게 될 줄 알았습니다. 하지만, 다음과 같이 405 에러가 발생했습니다. 이상해서 로그를 살펴보니 Request received for POST '/' ... 라는 로그가 보입니다. 그렇다보니, 제가 작성한 MainController에 있는 @GetMapping("/") 이 요청을 처리하지 않아요. @RestController public class MainController { @GetMapping("/") public String main() { return "This is Main Page!!"; } } @PostMapping 으로 변경하여 진행을 하였을 경우 정상적으로 반환이 되기는 합니다. 하지만 호돌맨님 강의에서는 Get 요청으로 받았고 정상적으로 처리가 되었지만, Post로 받아야 하는지 모르겠어서 질문 남깁니다.. 혹시 제가 잘못한 부분이 있다면 알려주시면 감사하겠습니다! 깃허브 주소는 아래에 남겨두겠습니다. 깃허브 repository : https://github.com/f1v3-log/f1v3-back
[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]
section 9 듣다가 피벗테이블 질문있어요 코드 : doc_covid2 = pd.pivot_table(doc_covid, index=['Country_Region'], values=['Confirmed'], aggfunc={'Confirmed': 'sum'}, fill_value=0, margins=True, margins_name='Total' ) 같은 경우 말그대로 doc_covid 에서 피벗테이블을 만드는데 Country_Region 에 대해서 Confirmed 를 더한 값을 컬럼으로 만드는 내용이잖아요 혹시 여기서 열을 추가 하는게 가능한 건가요?? Confirmed의 median 값을 컬럼으로 만드는 열을 추가 하고 싶은데 가능한건지요 ... 라고 질문글을 썼는데 혹시 몰라 그냥 구글에 검색하니까 aggfunc=['sum','median'] 이라 쓰면 됐었네요... 다른 분들에게도 도움 되시라고 그냥 남깁니다.
안녕하세요! 강의를 듣던 도중 조금 헷갈리는 부분이 있어서 질문을 남깁니다. 연습문제 2차 24번 문제에서 '높은 IOPS' 성능을 지원해야 한다라는 문제 지문 때문에 A,C,D 가 소거가 되었는데, A 번 지문에서 '암호화된 EBS' 볼륨이라는 건 '범용 SSD' 를 칭한다고 생각하면 되는걸까요? 이유가 EBS 에서도 프로비저닝 된 IOPS SSD 가 존재한다고 핵심정리 25 page 에 나와있어서 '프로비저닝 된' 이라는 단어가 적혀있지 않은 EBS 는 그냥 기본 EBS 로 생각해도 되는건지가 궁금합니다! 감사합니다.
도커 파일 빌드 오류 문의입니다. 게시판을 보니 비슷한 오류가 있었던거 같네요 맥에서도 해보고 윈도우에서도 해봤는데 동일하게 안되네요.. 오늘 하루종일 빌드만 했네요.. 어떤 부분을 잘못 하고 있는지 가이드 부탁합니다.. s3 에 사용할 iam 사용자 권한을 별도로 부여했는데요 . 새로 생성된 사용자의 권한 문제로 오류가 나는거 같네요.. 영상에서 한거와 같이 동일하게 했는데..오류가 나네요 혹시 다른 세팅이 있을까요?? => ERROR [11/18] RUN python3 download.py 11.1s ------ > [11/18] RUN python3 download.py: 5.085 The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling transformers.utils.move_cache() . 0it [00:00, ?it/s] 9.892 downloading reg images... 9.892 BUCKET_NAME:: dev-raymong-lecture-api-uploadsbucketc4b27cc7-547dbvnhp66w 9.899 Traceback (most recent call last): 9.899 File "download.py", line 64, in <module> 9.899 download_model() 9.899 File "download.py", line 20, in download_model 9.899 download_reg_images() 9.899 File "/s3_file_manager.py", line 20, in download_reg_images 9.899 bucket.download_file(filepath, savepath) 9.899 File "/opt/conda/lib/python3.8/site-packages/boto3/s3/inject.py", line 279, in bucket_download_file 9.899 return self.meta.client.download_file( 9.899 File "/opt/conda/lib/python3.8/site-packages/boto3/s3/inject.py", line 192, in download_file 9.899 return transfer.download_file( 9.899 File "/opt/conda/lib/python3.8/site-packages/boto3/s3/transfer.py", line 405, in download_file 9.899 future.result() 9.899 File "/opt/conda/lib/python3.8/site-packages/s3transfer/futures.py", line 103, in result 9.899 return self._coordinator.result() 9.899 File "/opt/conda/lib/python3.8/site-packages/s3transfer/futures.py", line 266, in result 9.899 raise self._exception 9.899 File "/opt/conda/lib/python3.8/site-packages/s3transfer/tasks.py", line 269, in _main 9.899 self._submit(transfer_future=transfer_future, **kwargs) 9.899 File "/opt/conda/lib/python3.8/site-packages/s3transfer/download.py", line 354, in _submit 9.899 response = client.head_object( 9.899 File "/opt/conda/lib/python3.8/site-packages/botocore/client.py", line 565, in api call 9.899 return self._make_api_call(operation_name, kwargs) 9.899 File "/opt/conda/lib/python3.8/site-packages/botocore/client.py", line 1021, in make api_call 9.899 raise error_class(parsed_response, operation_name) 9.899 botocore.exceptions.ClientError: An error occurred (403) when calling the HeadObject operation: Forbidden ------ Dockerfile:32 -------------------- 30 | ADD s3_file_manager.py . 31 | ADD download.py . 32 | >>> RUN python3 download.py 33 | 34 | ADD convert_diffusers_to_original_stable_diffusion.py . -------------------- ERROR: failed to solve: process "/bin/sh -c python3 download.py" did not complete successfully: exit code: 1 View build details: docker-desktop://dashboard/build/default/default/hu4bblbekud4p75go1rdofetm
안녕하세요! 이전 글에서 문의 드린거와 같이 토스 api 이슈가 있어, 스터디가 중지된 상태입니다. 혹시 제가 못 찾는건지 모르겠지만, 전체 소스 다운로드는 어디서 받을 수 있나요? 전체 소스를 제공 해주시면 돌려보면서 토스 페이먼츠 쪽 소스는 제외하고 돌려볼 수 있을 듯 해서 문의 합니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
JPA 관련 질문 드립니다. db 테이블의 컬럼 이름을 만들 때 isSold 라는 컬럼을 케멀케이스 형식으로 만들었습니다. 그런데 이러한 함수를 만들어서 사용할려고 하니 계속 에러가 떴습니다. 이러한 에러가 나와서 살펴보니 is_sold라는 컬럼을 찾는 것 같은데 저는 IsSold라고 컬럼명을 지어서 오류가 나는 거라고 생각이듭니다. 제가 궁금한점은 1. jpa가 스네이크케이스 형식으로 컬럼명을 자동으로 찾는 것 같아 오류가 나오는 걸로 생각이 드는데 이게 맞을까요? 2. 그럼 db의 컬럼 명을 처음 만들 때 컬럼명이 길 경우 스네이크케이스 형식으로 만들어야 할까요? 보편적으로 어떻게 하는지 궁금합니다.
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
2024-05-16T23:53:30.318+09:00 ERROR 11428 --- [library-app] [ restartedMain] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPLICATION FAILED TO START *************************** Description: Parameter 0 of constructor in com.group.libraryapp.service.book.BookService required a bean of type 'com.group.libraryapp.domain.book.BookRepository' that could not be found. Action: Consider defining a bean of type 'com.group.libraryapp.domain.book.BookRepository' in your configuration. Process finished with exit code 0 이런 오류가 뜨는데 bean 설정도 강의 내용그대로 한거 같은데 계속 코드를 수정하려고 해도 Error 가 떠서 해결방법을 모르겠습니다 package com.group.libraryapp.service.book; import com.group.libraryapp.domain.book.Book; import com.group.libraryapp.domain.book.BookRepository; import com.group.libraryapp.domain.user.User; import com.group.libraryapp.domain.user.UserRepository; import com.group.libraryapp.domain.user.loanhistory.UserLoanHistory; import com.group.libraryapp.domain.user.loanhistory.UserLoanHistoryRepository; import com.group.libraryapp.dto.Book.request.BookCreateRequest; import com.group.libraryapp.dto.Book.request.BookLoanRequest; import com.group.libraryapp.dto.Book.request.BookReturnRequest; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @Service public class BookService { private final BookRepository bookRepository; private final UserLoanHistoryRepository userLoanHistoryRepository; private final UserRepository userRepository; public BookService( BookRepository bookRepository, UserLoanHistoryRepository userLoanHistoryRepository, UserRepository userRepository) { this.bookRepository = bookRepository; this.userLoanHistoryRepository = userLoanHistoryRepository; this.userRepository = userRepository; } @Transactional public void saveBook(BookCreateRequest request){ bookRepository.save(new Book(request.getName())); } @Transactional public void loanBook(BookLoanRequest request){ Book book = bookRepository.findByName(request.getBookName()) .orElseThrow(IllegalArgumentException::new); if(userLoanHistoryRepository.existsByBookNameAndIsReturn (book.getName(),false)){ throw new IllegalArgumentException("이미 대출되어 있는 책 입니다"); } User user = userRepository.findByName(request.getUsername()) .orElseThrow(IllegalArgumentException::new); userLoanHistoryRepository.save(new UserLoanHistory(user, book.getName())); } @Transactional public void returnBook(BookReturnRequest request){ User user= userRepository.findByName(request.getUserName()) .orElseThrow(IllegalArgumentException::new); UserLoanHistory history = userLoanHistoryRepository.findByUserIdAndBookName(user.getId(), request.getBookName()) .orElseThrow(IllegalArgumentException::new); history.doReturn(); } } package com.group.libraryapp.domain.book; import org.springframework.data.jpa.repository.JpaRepository; import java.util.Optional; public interface BookRepository extends JpaRepository<Book,Long> { Optional<Book> findByName(String bookName); }