문제 | 접근방식 | 답변 |
---|---|---|
Jenkins 에서 git merge 명령 실행 시 머지가 되지 않는 문제 | 저번 주에 말씀드렸던 문제입니다. | |
풀 댕겨오고, 브랜치 새로파고, 이것저것 다 시도해보았지만 머지가 안되더라구요 ㅠㅠ |
저번에 checkout scm
시 머지된 상태로 받아온다고 말씀해주셨던 것 같은데, 그냥 타겟브랜치만 받아와지는 것 같았습니다…
그래서 결국 머지는 못하고 타겟 브랜치에 대해서만 npm test
와, npm build
를 실행해서 테스트하고 CI 를 수행 해 주도록 했습니다. | 제대로 통합이 되었는지를 확인해보기 위해서는 pr이 병합된 상태에서 빌드를 하도록 더 파보면 좋을 것 같습니다.
https://blog.naver.com/dydwlsdydgn/222424694834 | | 로그인이 필요한 기능을 로그인 없이 구현할 수 있을까요? | 구현해보고 싶은 기능이 있는데, 이 기능을 구현하기 위해서는 로그인이 필요할 것 같아요.
그런데 로그인 기능까지 넣기에는 프론트 팀원에게 너무 많은 일을 추가해주는 것 같아 고민입니다.
사용자의 DB를 dump 했다가 사용자가 재접속 했을 때 복원해주는 기능인데, 이 기능을 로그인 없이 구현할 수 있는 좋은 방법이 있을까요? | 임의의 식별 관리 가능한 키값으로 관리하면 로그인 없이 해당 기능을 구현할 수 있을 것 같습니다. |
| 배포 시 pm2 활용 | 서버가 죽을때 다시 실행시킬 수 있도록 배포용 도커파일에서 nest
서버를 pm2 로 감싸서 실행시키도록 해주었습니다.
실무에서도 서버 배포에 pm2 같이 관리해주는 모듈을 활용하는지 궁금합니다! | 인프런에서도 사용 node 자체가 서버가 죽기 쉽기 때문에 pm2를 많이 사용합니다. 원인을 해결하지 못한 상태로 서버를 살리는 것은 위험하기 때문에, 어떤 이유에서 서버가 죽는지 ncloud에서 모니터링하여 확인해보는 것이 좋을 것 같습니다. 서버가 죽는 원인을 확인하는 것이 우선!! | | 서버 관리 & 로깅 | 서버 로깅을 해보려 합니다.
winston
같은 로깅 라이브러리를 활용해서 서비스 내에서 로그파일을 쓰고 관리하기console.log()
로 출력하고, 도커 로그를 따로 관리하기크게 이렇게 2가지 방법을 이야기했습니다. 둘 중 어떤 방법이 좋을까요?
센트리 - 이벤트 모니터링 그라파나 프로메테우스 |
서비스 중간에 테이블 스키마를 변경했을 때, typeORM
스키마와 기존 DB 스키마와 충돌나서 연결오류나는 문제
랜덤 데이터를 .csv
로 만들고, load data
쿼리문을 활용하여 데이터를 삽입
load data
명령어를 사용하기 위해선 클라이언트 사이드와 서버사이드 모두 옵션을 활성화해주어야 했습니다.mysql2
모듈에서 또 특수문자를 필터링해서 처리해주는데 이런저런 시행착오가 있었습니다.