13

我在 WCF 应用程序上设置了 Elmah,它正在记录到 SQL 服务器。就将数据插入Elmah_error表中而言,一切似乎都在工作。但表格中有 5 个错误,而Elmah.axd.

如何设置 Elmah 以显示表中的所有错误?

额外信息

数据库中的错误

  • System.Web.HttpRequestValidationException
  • 系统异常
  • 系统异常
  • System.ArgumentException

Elmah.axd 上显示的错误

  • System.Web.HttpRequestValidationException
  • System.Web.HttpException

Web.config 设置

<httpModules>
  <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
  <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
  <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>

 

  <system.webServer>
    <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>
    <validation validateIntegratedModeConfiguration="false" />
  </system.webServer>

 

<system.webServer>
  <handlers>
    <add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
  </handlers>
</system.webServer>
4

1 回答 1

29

Elmah 为 Elmar_error 表中的每个日志条目记录一个应用程序名称。当您浏览 Elmah.axd 时,它使用默认应用程序名称来过滤日志条目。

You can set the applicationName attribute on the errorLog tag in the elmah Web.config section to view the entries.

<errorLog type="Elmah.SqlErrorLog" applicationName="AppName" />
于 2012-08-27T20:57:58.340 回答