filter scope

예외 필터 적용 범위

예외 필터는 전역, 컨트롤러, 메서드 단위로 적용할 수 있다. 넓게 걸수록 일관성은 커지고, 좁게 걸수록 특수 응답을 만들기 쉽다.

선택 기준: 공통 규격은 전역, 특수 규칙은 좁게범위를 먼저 정해야 충돌이 줄어든다.

범위 결정 순서

1전체 오류 계약

서비스 전체가 공유할 응답 규격을 먼저 정한다.

2리소스별 코드

한 리소스 그룹만 다르면 컨트롤러 범위를 검토한다.

3단일 엔드포인트

한 라우트만 다르면 메서드 범위로 제한한다.

적용 범위별 사용 기준

범위적용 방법적합한 상황
전역app.useGlobalFilters()모든 API 오류 응답 형식을 통일한다.
컨트롤러@UseFilters() on controller한 리소스 그룹의 오류 문맥이 다르다.
메서드@UseFilters() on handler특정 라우트만 특별한 오류 포맷이 필요하다.
핵심: 필터 범위는 누가 같은 응답 계약을 공유하는가라는 질문으로 결정한다.