본문 바로가기
반응형

backend27

[NestJS]NestJS에서 Swagger 사용법 어떤 프로젝트를 하던간에 문서화는 필수다. 특히 프로젝트가 크면 클수록 문서화를 해놓지 않는다면 유지보수나 기능확장을 할 때 엄청난 재앙으로 돌아올 확률이 크고 협업함에 있어서도 어려움을 겪는다. NestJS를 통해 api 서버를 개발 할 때 이 문서화의 귀찮음을 어느정도 해결해줄 수 있는 방법이 있다. Swagger란? Swagger는 API 문서 자동화 도구이다. 그냥 API 코드를 만들고 수정하면서 자연스럽게 API 문서가 생성되고 수정한다. 즉 굳이 따로 시간내서 작성할 필요가 없다는 것이다. 특히 API 문서에서 제일 문제가 되는게 최신화인데(최신화가 되지 않으면 다른 팀원들과의 협업에서 문제가 생길 수 있다.) 이런 문제가 자연스럽게 해결 된다. 또 장점은 이 API를 테스트할 수 있는 화면까.. 2023. 5. 3.
[NestJS]NestJS,MySQL 쿼리 로깅(logging) 로그는 애플리케이션에서 발생하는 많은 이벤트들에 대한 기록이다. 에러가 발생하거나 어떠한 요청이 왔을 때 해당 로그를 보고 문제를 파악한다던지 어떤 요청이 들어왔는지 파악하는 등 아주 중요한 역할을 한다. 그럼 NestJS는 어떻게 로그를 남길 수 있을까? 자바스크립트에는 console.log()가 있지만 그것보다는 다른 방법이 더 좋을 수 있다. Logger Class NestJS는 다행히도 기본적으로 로거가 내장되어 있고 손 쉽게 사용할 수 있다. @nestjs/common 패키지에서 Logger 클래스를 불러와서 인스턴스 생성 후 사용해 주기만 하면 된다. private readonly logger = new Logger(AlcoholController.name); 이렇게 인스턴스를 생성하면 쉽게 .. 2023. 4. 21.
[Spring]Spring 레거시 프로젝트 AWS elastic beanstalk으로 5분만에 배포하기 오늘은 스프링 레거시 프로젝트를 AWS elastic beanstalk으로 손 쉽게 배포해보는 방법을 포스팅 해보도록 하겠다. 먼저 스프링 프로젝트에서 .war 파일을 뽑아낸다. 프로젝트 이름을 적고 경로 설정을 해준다. 그 다음에 AWS 사이트로 이동. 로그인을 하고 Elastic Beanstalk으로 이동한다. 시작하기의 Create Application 클릭 애플리케이션 이름을 적어주고 톰캣을 사용해서 배포할거니까 플랫폼을 톰캣을 선택해주고 애플리케이션 코드를 직접 업로드 할거니까 (아까 export 한 .war 파일) 코드 업로드를 선택해준다. 로컬 파일을 선택한 후 (만약 .war 파일의 용량이 크다면 S3에 파일을 업로드한 뒤 해당 객체의 URL을 넘기면 된다.) 그리고 아까 export한 w.. 2023. 4. 2.
[NestJS]NestJS에서 메일 보내기 사이드 프로젝트를 진행하던 도중 메일을 보내야 하는 상황이 생겼다. 복잡한 메일은 아니고 간단한 데이터 몇 개를 메일로 보내야 되는 상황이였는데 NestJS에서 메일 보내는 방법을 알아보자 먼저 npm install --save @nestjs-modules/mailer nodemailer 명령어를 사용해 관련 라이브러리를 설치한다. 공식 홈페이지에서는 여기서 template를 사용하려면 pug나 ejs 같은 걸 설치하라고 하는데 난 사용 안할거니까 패스. MailerModule.forRootAsync({ useFactory: () => ({ transport: { host: 'smtp.naver.com', port: 465, auth: { user: process.env.EMAIL_ID, pass: pr.. 2023. 3. 22.
반응형