이슈 기존 service와 controller 테스트를 실제 db와 똑같은 환경의 컨테이너 테스트 db에서 실행 하였음 깃 액션 ci에서도 같은 환경의 테스트를 구축 하려함 mysql 5.7버전 부터 Group By 절에 포함되지 않는 Column (nonaggregated column)을 select 할 경우, 컬럼의 어느 부분에 표시해야 할 지 애...
깃 액션 CD 구축 이슈 처음 설계를 할 때 프리티어 ec2에 컨테이너를 띄우고 깃 액션에서 이미지를 만들어 latest 이미지를 재실행으로 배포 하려함 프리티어 메모리 부족문제로 빌드 부터 막힘 ㅜㅜ 해결 깃 액션에서 빌드 후 dist 폴더를 ec2로 전송하고 pm2를 재실행하는 방식으로 배포 완료 추가 이슈 nvm 권한관련 에러 이슈 > app...
ORM을 사용하지 않고 그 동안 여러 프로젝트를 진행하면서 mongoose라던가 TypeORM 같은 ORM을 사용 하였다. 이러하다 보니 뭔가 도구를 사용하기 위한 도구를 공부하는 느낌이라, 이참에 ORM을 사용하지 않고 진행하기로 하였다! > MySQL 8버전으로 mysql2 드라이버를 사용하였다. 마주친 문제 대부분의 ORM들은 스키마를 정의하면...
커스텀 데코레이터 class-validator에 빈 공백 제거해주는 기능이 없음 trim을 이용해 해결 하려 했지만 맨 왼쪽, 맨 오른쪽 문자열 공백만 제거 해주기 때문에 원하는 기능과 다름 해결 정규표현식을 이용하여 /\s/ 문자열에 빈 공백이 있는 경우 유효성 검사에서 실패하는 데코레이터 만들어 해결 코드 loggingReq 미들웨어 로거에...
이슈 req.session.key="키입니다." 와 같이 세션에 저장하려니 아래와 같은 오류가 발생하였다. 현재 connect-redis 모듈과 node-redis 모듈 간의 호환이 되지 않아서 생긴 문제였다. 해결 legacyMode: true 이 코드를 추가 해주면 된다. 출처 https://github.com/tj/connect-redis/is...
도커 컨테이너 리소스 제한하기 데스크탑의 로컬 환경에서 작업을 할 경우에는 문제가 없는데 노트북으로 컨테이너를 띄우고 사용을 하게되면 CPU 자원 할당이 100%가 되는 현상을 자주 겪게되어 리소스를 제한하는 방법을 찾아본다! 도커와 도커 컴포즈 모두 제한하는 방법이 있지만 컴포즈를 자주 사용하니 이것만 알아 보도록 한다. 제한하는 방법 > 2버전과 3...
깃헙액션 MySQL 일해라!
session은 어디에 저장하는 것이 적합할까? 세션은 비연결성과 상태없음같은 특성을 보완하기 위해 사용한다. 세션에 주로 로그인한 유저의 정보를 저장하는데, 이 정보는 영원히 저장되는 것이 아니다. 유저의 로그아웃이나 개발자의 세션 만료 설정에 따라 세션이 제거가 된다. 위와 같은 이유 때문에 데이터 유실로 인한 피해가 다른 데이터에 비해 적다. 예를 ...
AWS Athena를 통해 ALB 로그 분석
Log에서 Credential한 값 필터링하기