feat: SpmsException 및 글로벌 예외 처리 미들웨어 구현 (#16) #17
No reviewers
SPMS/Owners
Labels
No Label
Priority
High
Priority
Low
Priority
Medium
Priority
Non
Priority
Urgent
Status
Available
Status
Done
Status
In Progress
Type
Bug
Type
Chore
Type
Design
Type
Documentation
Type
Feature
Type
Improvement
Type
Refactor
Type
Research
Type
Task
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: SPMS/SPMS_API#17
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "feature/#16-exception-handling"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 작업 요약
SpmsException구현 (Domain Layer)ExceptionMiddleware구현 (API Layer)🔗 관련 이슈 (Related Issues)
Closes #16
🛠️ 작업 내용 (Changes)
SPMS.Domain/Exceptions/SpmsException.cs— ErrorCode, Message, HttpStatusCode 프로퍼티 + 팩토리 메서드 (BadRequest, Unauthorized, NotFound, Conflict, LimitExceeded)SPMS.API/Middlewares/ExceptionMiddleware.cs— SpmsException → ApiResponse.Fail() 변환, 미처리 예외 → 104 (서버 내부 오류) 변환, ILogger 로깅 연동SPMS.API/Program.cs— ExceptionMiddleware 파이프라인 최외곽 등록📢 리뷰어 참고 사항 (To Reviewers)
SpmsException은ErrorCodes상수를 활용하는 팩토리 메서드를 제공하여 일관된 에러 코드 사용을 유도합니다ExceptionMiddleware는Documents/ProgramSetup.md§8.1 가이드를 그대로 따릅니다ILogger<T>를 사용합니다 (Issue #8에서 Serilog 전환 예정)✅ 체크리스트 (Self Checklist)
📸 스크린샷 / 테스트 로그 (Screenshots/Logs)