UI, 컨트롤러, 비즈니스 로직 및 데이터 액세스 레이어와 같은 레이어가있는 애플리케이션을 잠시 들여다 보겠습니다. UI는 Controller와 통신하고 Controller는 Business Logic과 통신하며 Business Logic은 Data Access 계층과 통신합니다. 또한 관리자가 응용 프로그램의 문제를 해결하는 데 사용할 수있는 오류 메시지와 예외가있는 테이블을 데이터베이스에 가지고 있다고 가정합니다.SQL 예외 로깅이 어떤 계층에서 발생해야합니까?
데이터 액세스 레이어에 SQL 예외가 발생하면 (예 : 네트워크 문제, 문자열이 잘린 경우 등) 예외 정보가 기록되기 전에 얼마나 멀리 올라야합니까? 로그에는 개발자가 문제를 추적 할 수있는 충분한 정보를 제공하는 여러 계층의 메시지가 포함되는 것이 이상적입니다. 데이터 액세스 레이어의 SQL 예외가 UI까지 진행되고 거기에 기록 될 수 있습니까? 또는 로컬에서 잡아서 기록하고 재 작성하거나 다른 사용자 정의 예외로 래핑해야합니까? 또는 데이터 액세스 계층에서 문제가 있는지 여부를 나타내는 플래그가있는 특수한 유형을 반환해야하며, 그렇다면 예외 정보도 첨부해야합니다. 또한 SQL 예외/스택 추적 정보에 대한 보안 문제가 UI까지 적용됩니까?
나는 이것이 약간의 주관적인 질문 일 수 있다는 것을 알고 있지만 전문가들의 의견에 대해서는 궁금합니다. 설명이 필요한 경우 알려주십시오.