三分钟集成elmah xml 格式日志到mvc站点

Posted Zeroes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三分钟集成elmah xml 格式日志到mvc站点相关的知识,希望对你有一定的参考价值。

1.通过nuget安装Elmah

ELMAH on XML Log 会自动在web.config 文件中添加配置内容,默认不允许远程访问,日志访问路径是 Elmah.axd,不记录500错误

 

2.修改配置文件

增加500的异常记录,允许远程访问

 <elmah>
    <!--
        See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for 
        more information on remote access and securing ELMAH.
    -->
    <security allowRemoteAccess="true" />
    <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data/Elmah.Errors" />
    <errorFilter>
      <test>
        <equal binding="HttpStatusCode" value="404" type="Int32" />
        <equal binding="HttpStatusCode" value="500" type="Int32" />
      </test>
    </errorFilter>
  </elmah>

修改访问路径

<location path="log.axd" inheritInChildApplications="false">
    <system.web>
      <httpHandlers>
        <add verb="POST,GET,HEAD" path="log.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
      </httpHandlers>
      <!-- 
        See http://code.google.com/p/elmah/wiki/SecuringErrorLogPages for 
        more information on using ASP.NET authorization securing ELMAH.

      <authorization>
        <allow roles="admin" />
        <deny users="*" />  
      </authorization>
      -->
    </system.web>
    <system.webServer>
      <handlers>
        <add name="ELMAH" verb="POST,GET,HEAD" path="log.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
      </handlers>
    </system.webServer>
  </location>

在nuget上有很多ELMAH的扩展可以存储为其它格式。

 

以上是关于三分钟集成elmah xml 格式日志到mvc站点的主要内容,如果未能解决你的问题,请参考以下文章

在 Apache 上运行 ASP.net MVC 时无法访问 elmah.axd

System.Web.HttpContextBase' 不包含带有 Elmah 日志记录的“当前”MVC 4 的定义

Elmah 未在 MVC 应用程序中记录 http 发布请求的异常 - 如果请求包含 XML

Elmah 不适用于 asp.net mvc

Elmah.MVC 与 Elmah.contrib.Mvc

通过 Live 应用程序上的 Web 界面查看 ELMAH 日志 [重复]