매번 Elmah는 오류가 두 번 기록되는 오류를 기록합니다. 정확히 동일한 타임 스탬프와 100 % 동일합니다. web.config에는 특별한 구성이 없습니다. Web.config의에서mvc가있는 elmah가 두 번 로깅 중입니다
filters.Add(new ElmahHandleErrorAttribute {
ExceptionType = typeof(System.Data.Common.DbException),
// DbError.cshtml is a view in the Shared folder.
View = "DbError",
Order = 2
});
filters.Add(new ElmahHandleErrorAttribute {
ExceptionType = typeof(Exception),
// DbError.cshtml is a view in the Shared folder.
View = "Error",
Order = 3
});
일부 조각 : 다음 ElmaHandleErrorAttribute에서
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
및
<modules runAllManagedModulesForAllRequests="true">
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
</modules>
이 코드 :
public override void OnException(ExceptionContext context) {
base.OnException(context);
if (!context.ExceptionHandled
|| TryRaiseErrorSignal(context)
|| IsFiltered(context))
return;
LogException(context);
}
나는 ElmahHandleErrorAttribute에게 추가 된 두 개의 필터를 만들었습니다
많이 검색했지만 문제가 해결되지 않았습니다. web.config 또는 이와 유사한 항목에 이중 항목이 없습니다.
큰 문제는 아니지만 성가시다. 사전
©에서
이들으 A-X-I
당신은 사용자 정의 ElmaHandleErrorAttribute에서 예외 유형을 확인하지 않습니다. 따라서 2 번 호출됩니다. DbException은 Exception에서 상속되기 때문입니다. – VahidN
이 비슷한 질문에 대한 내 제안 된 답변을 참조하십시오 http://stackoverflow.com/a/16794746/589827 – DGreen