diff --git a/.github/workflows/backend-rest-deploy.yml b/.github/workflows/backend-rest-deploy.yml index 58399690..78bd9f02 100644 --- a/.github/workflows/backend-rest-deploy.yml +++ b/.github/workflows/backend-rest-deploy.yml @@ -1,29 +1,29 @@ -name: Backend Rest Server Deploy +name: Backend Rest Server Deploy on: push: - branches: [main] - + branches: [main] + jobs: docker-build-push: runs-on: ubuntu-latest defaults: run: working-directory: ./backend/rest - - steps: + + steps: - name: repository의 파일을 가상 인스턴스로 복사합니다. uses: actions/checkout@v3 - + - name: docker 관련 로직 처리를 위한 buildx를 설치합니다. uses: docker/setup-buildx-action@v2 - + - name: docker hub에 로그인 합니다. uses: docker/login-action@v2 with: username: ${{ secrets.DOCKER_HUB_ID }} password: ${{ secrets.DOCKER_HUB_TOKEN }} - + - name: docker 이미지를 build 및 push합니다. uses: docker/build-push-action@v3 with: @@ -32,12 +32,12 @@ jobs: tags: ${{ secrets.DOCKER_REST_IMAGE }}:${{ secrets.VERSION }},${{ secrets.DOCKER_REST_IMAGE }}:latest cache-from: type=gha cache-to: type=gha,mode=max - + docker-run: needs: docker-build-push runs-on: ubuntu-latest - - steps: + + steps: - name: 배포 서버에서 docker image를 받아서 container를 실행시킵니다. uses: appleboy/ssh-action@master with: @@ -45,11 +45,12 @@ jobs: password: ${{ secrets.REST_SERVER_PWD }} host: ${{ secrets.REST_SERVER_HOST }} port: ${{ secrets.REST_SERVER_PORT }} - + script: | export CURRENT_CONTAINER=$(docker ps -aq -f "name=rest-server") docker stop $(echo $CURRENT_CONTAINER) && docker rm $(echo $CURRENT_CONTAINER) docker pull ${{ secrets.DOCKER_REST_IMAGE }}:latest + docker rmi $(docker images -f "dangling=true" -q) docker run \ -e DB_USER=${{ secrets.DB_USER }} \ -e DB_PASSWORD=${{ secrets.DB_PASSWORD }} \ diff --git a/backend/rest/src/filter/http-exception.filter.ts b/backend/rest/src/filter/http-exception.filter.ts index df8a0ab9..00b898ce 100644 --- a/backend/rest/src/filter/http-exception.filter.ts +++ b/backend/rest/src/filter/http-exception.filter.ts @@ -18,20 +18,21 @@ export class HttpExceptionFilter implements ExceptionFilter { const req = ctx.getRequest(); if (!(exception instanceof HttpException)) { + console.error(exception); exception = new InternalServerErrorException(); } - const { statusCode, message, error }: any = (exception as HttpException).getResponse(); + const { statusCode, message, name }: any = (exception as HttpException).getResponse(); const { stack } = exception; logger.error(`[Request URL] ${req.url}`); logger.error(`[Exception Time] ${new Date().toISOString()}`); - logger.error(`[Exception Name] ${error}`); + logger.error(`[Exception Name] ${name}`); logger.error(`[Exception Message] ${statusCode} - ${message}`); logger.error(`[Exception Stack] ${stack}`); const response = { - name: error, + name, message: `${statusCode} - ${message}`, stack: stack, };