로깅 로직을 뷰 레이어 또는 서비스 레이어에 넣어야합니까?로깅 요청은 어디에 속합니까?
서비스 레이어가 여러 다른보기 (http, rpc 등)의 기본 레이어이기 때문에 더 이해가된다고 생각합니다. 로깅이 뷰 계층에서 수행 된 경우 각 다른 뷰에 대해 구현해야합니다.
반면에 모든 로깅 로직이 서비스 계층에있는 경우보기 수준에서 들어오는 요청과 실패를 기록 할 수 없습니다 (예 : JWT 인증 실패, 예를 들어 JWT 인증 실패, 요청이 서비스에 도달했습니다).
어디에서 로깅을해야합니까?
왜 둘 다 있지 않습니까? 응용 프로그램 구성 설정에 따라 활성화 또는 비활성화 할 로깅이 결정됩니다. 괜찮은 로깅 프레임 워크는 그러한 구성 옵션을 갖게 될 것입니다. – David
저는 로깅 로직을 한 곳에 집중시키는 아이디어와 비슷하다고 생각합니다. 또한 로깅이 게이트웨이 서비스로 구현되는 경우보기에는 (이상적으로)보기가 있어야합니다. 뷰 계층에 로깅을 시작하려면이 제 3 자 로깅 서버에 대한 지식이 있어야하며 서버와 통신하는 방법을 알아야합니다. – user7467314
응용 프로그램 계층에는 해당 종속성에 대한 지식이 전혀 필요하지 않습니다. 세부 사항은 기술마다 다를 수 있지만 일반적으로 모든 구성 요소가 기록 할 수있는 내 도메인에 로깅 인터페이스가 있습니다. 내 의존성 반전은 인터페이스를 사용하는 특정 구성 요소에 알려지지 않은 해당 인터페이스의 구현을 제공합니다. 나는 당신이 임의로 단 하나의 장소에 로그인하기를 원한다면 그 장소를 골라야한다고 생각합니다. 하지만 애플리케이션 코드와 서비스 코드는 매우 다른 데이터를 처리하고 작동하므로 개인적으로 두 가지 옵션을 모두 기록해야합니다. – David