2011-04-25 5 views
0

저는 많은 프로젝트에서 Elmah를 사용했으며 각 프로젝트마다 두 개의 동일한 로그 레코드가 각 예외마다 생성됩니다. 공간이 혼란스럽고 낭비되는 것 외에는 잘 작동합니다.Elmah는 항상 두 가지 동일한 예외를 기록합니다. 그 이유는 무엇입니까?

누가이 행동을하기 전에 보았습니까?

편집 :이 내가 "whocanhelpme"프로젝트에서 사용 된 예제 코드입니다

protected void Application_Error() { 
     // Use ELMAH to log the exception 
     var exception = Server.GetLastError(); 
     var context = HttpContext.Current; 
     var signal = ErrorSignal.FromContext(context); 
     if (signal != null) { 
      signal.Raise(exception, context); 
     } 

     // Show custom error page if necessary 
     if (!_showCustomErrorPages) return; 
     if (exception is HttpRequestValidationException) { 
      DisplayErrorPage("InvalidInput"); 
      return; 
     } 

     DisplayErrorPage("Error"); 
    } 

{global.asax.cs에서}.

답변

2

Web.config에 두 번 등록 된 ELMAH 오류 로깅 모듈이 있습니까?

system.webServer\modules 한 번 system.web\httpModules에 한 번 그것을 가지고 괜찮습니다,하지만 내 초기 생각은 어쩌면 당신이이 섹션 중 하나 (또는 ​​그 이상)에 두 번등록이이었다. 아마도 Web.config 파일의 내용을 포함하도록 질문을 편집 할 수 있습니까 (물론 전자 메일 설정이나 연결 문자열과 같은 중요한 정보는 제거 할 수 있습니까?).

또 다른 생각은 이벤트 핸들러가 Global.asax에 있습니까? 그렇다면 ELMAH에서 두 번째로 오류를 기록 할 수있는 작업을하고 있습니까?

+0

hmmmm 생각 해보니 내가 elmah 구현의 일부로 whocanhelpme 프로젝트의 예제 코드를 사용하고 있었고 Application_OnError를 던져서 그 효과에 대한 주석을 달았습니다 ... 분명히 이것은 있습니다. 하나의 사본을 책임진다. 당연히 질문은 "그들이 이것을 쓸 때 생각한 무엇이"일 것입니다. 이걸 조금 더 가까이 봐야 해. – tlum

관련 문제