2009-06-02 5 views
9

내 팀은 현재 ASP.NET MVC 응용 프로그램을 작성하는 중이고 오류 처리 및 로깅을 처리하기 위해 구현할 프레임 워크를 결정하려고합니다.ELMAH 대 엔터프라이즈 라이브러리 예외 처리 블록

이들 중 하나를 선택하는 이유는 무엇입니까?

+0

왜 log4net을 고려하지 않습니까? – Paco

+0

log4net 예외 처리를 수행하지 않습니다. 로그 만 기록합니다 (예 : 파일, 데이터베이스에 쓰기, 이메일 보내기 ...). ELMAH 및 EL_EHB를 사용하면 예외가 발생할 때 정책을 정의 할 수 있습니다. 예를 들어, 이런 종류의 예외가 발생할 때 이것을하십시오. 로거와 예외 핸들러는 보완 적입니다. – ihebiheb

답변

11

필자는 개인적으로 많은 고객을 위해 엔터프라이즈 라이브러리를 사용해 왔지만 아직 ELMAH를 사용하지 않았습니다. Ent Lib에 대한 제 생각은 이렇습니다.

  • Ent Lib의 속도를 높이려면 약간의 시간이 걸릴 것입니다. 5 초가 아닌 설치하고 사용하기 시작합니다.
  • 작동시키기 위해서 app.config/web.config 파일에서 수행 할 설정이 많이 있습니다. 즉, 일단 당신이 그것을 이해하면, 다른 프로젝트에서 더 쉬워 진다고합니다.
  • 어딘가에 정보를 기록하려면 예외 처리 블록이 아닌 로깅 블록을 구현해야합니다 (이벤트 로그, 플랫 파일, 데이터베이스 등)
  • 로깅 예외는 아닙니다. 예를 들어 많은 고객은 사용자가 응용 프로그램에 로그인하거나 로그 아웃 할 때 로그 이벤트를 얻고 자합니다.
  • 환경에 따라 로깅 작동 방식을 변경할 수 있습니다 (예 : 프로덕션의 예외 기록, Dev의 모든 로그).
  • 웹용뿐만 아니라 모든 종류의 애플리케이션 용입니다.

ELMAH의 겉만 번쩍 거림은 내가 뭔가를 빨리 얻을 수있는 좋은 방법이라고 생각하게합니다. 장기적으로, 당신은 추가적인 힘으로 무언가를 원할지도 모릅니다.

6

ELMAH는 간단하고 사용하기 쉽고 구현하기 쉽습니다. EntLib은 크고 "enterprisey"이며 강력합니다. 귀하의 상황에 대해 알고있는 조금을 기반으로 귀하의 경우, 나는 무엇이든 추천하는 것을 주저합니다. 그러나 내가 당신을 위해 하나를 골라야한다면 ELMAH가 이유를 말해 준다고 말할 것입니다.

+0

귀하의 추천을 더 쉽게 만들어 줄 수있는 정보가 있습니까? - 고마워요 –

+0

어떤 종류의 응용 프로그램이 될 것인가? 예외 정책 관리 또는 예외 로깅 만 필요합니까? –

5

저는 여기에서 벗어날 수 있습니다.하지만 EntLibrary는 예외 처리를 개발하는 데 도움이되는 반면 ELMAH는 예외가 발생하는 시점과 장소를 표시하려고합니다. 예외 보고서를 원한다면 ELMAH를 사용하십시오.

3

또한 Elmah는 처리되지 않고 처리되지 않은 예외를 캡처하고 기록하도록 설계되었습니다. 발견 된 예외를 기록하도록 구성 할 수 있지만 이는 최근의 추가 사항이며 주 목적이 아닙니다.

관련 문제