我在Azure网站上使用Elmah.MVC 2和MVC3,ASP.NET 4.5.
我已将其设置为通过web.config记录到Web服务器上的XML文件.这一切都有效.但是我想暂时停止它,因为我认为它可能会减慢Web服务器的速度,因为它需要花时间编写这些错误文件.我打算登录到sql Server.但是现在我需要阻止艾玛.
我的Web.config Elmah部分是:
<sectionGroup name="elmah"> <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler,Elmah" /> <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler,Elmah" /> <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler,Elmah" /> <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler,Elmah" /> </sectionGroup>
和
<add key="elmah.mvc.disableHandler" value="true" /> <add key="elmah.mvc.disableHandleErrorFilter" value="false" /> <add key="elmah.mvc.requiresAuthentication" value="true" /> <add key="elmah.mvc.IgnoreDefaultRoute" value="false" /> <add key="elmah.mvc.allowedRoles" value="Admin" /> <add key="elmah.mvc.allowedUsers" value="Admin" /> <add key="elmah.mvc.route" value="elmah" />
和
<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>
和
<elmah> <security allowRemoteAccess="yes" /> <errorLog type="Elmah.sqlErrorLog,Elmah" connectionStringName="myDatabaseCS" /> <errorLog type="Elmah.XmlFileErrorLog,Elmah" logPath="~/App_Data" /> </elmah> </configuration>
我以为这条线阻止了它:
<add key="elmah.mvc.disableHandler" value="true" />
但唉不是.但是我无法访问Elmah页面,即/ Elmah只是将我返回登录页面.
我该如何阻止Elmah伐木?
谢谢.
编辑1:
它可能与Global.asa中的这个有关:
//filters.Add(new ElmahHandledErrorLoggerFilter()); filters.Add(new HandleErrorAttribute());
第一行被注释掉了,因为我不相信它在V2中是必需的.现在所有的错误处理都与Elmah合并了.