NestJS에서 미들웨어의 this 사용: JavaScript의 this 동작 방식 이해와 해결책 NestJS 프로젝트에서 커스텀 로깅 미들웨어를 작성하다 보면 JavaScript의 this 동작 방식에 의해 의도치 않은 오류를 마주칠 수 있습니다. 이 글에서는 이런 문제를 해결하는 방법을 다뤄보겠습니다. 문제 상황아래와 같이 Express Response 객체의 json 메서드를 오버라이드하여 요청과 응답을 로깅하려고 할 때, this.logger 접근이 실패하는 문제가 발생할 수 있습니다.import { Injectable, Logger, NestMiddleware } from '@nestjs/common';import { NextFunction, Request, Response } from 'exp..
스프링부트 로그 레벨 변경기 - 내장 톰캣 로그 레벨 이슈 오늘 강의를 듣다가 HTTP 요청 로그가 뜨지않아서 찾아본 경험을 정리합니다. 디버깅을 위해 로그 레벨을 설정했는데, 로그가 보이지 않는 상황이 발생. 이 문제를 해결하기 위해 여러 시도 끝에 찾아낸 정보와 해결 방법을 정리해보려고 해요. 로그 레벨이란? 먼저, 로그 레벨에 대해 간단히 설명하자면, 로그 레벨은 애플리케이션에서 발생하는 다양한 정보의 중요도에 따라 분류하는 것 입니다. 스프링부트는 기본적으로 다음과 같은 로그 레벨을 제공해요. TRACE: 가장 상세한 정보를 제공하며, 애플리케이션의 실행 흐름과 디버깅 정보를 상세히 기록. DEBUG: 개발 단계에서 상세한 정보를 기록하며 애플리케이션의 내부 동작을 이해하는 데 도움. INFO: ..
Github Actions 에서 Maven프로젝트 테스트 로컬에서 Test코드를 돌려보면 다 정상적으로 돌아가거나 실패하는데, Github Actions에서 실행하면 테스트가 모두 실행되지 않고 그냥 통과가 되는 현상이 발생했다. Framework : Spring 프로젝트 : Maven Java : 17 Test : JUnit5 문제상황 Running hello.deployproject.beanfind.ApplicationContextBasicFindTest # 단위테스트 0개 step:6:48)Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec # 통합테스트 0개 step:6:50)Results : step:6:52)Tes..