我已配置ELMAH以捕获错误。
当我浏览localhost:portno / elmah.axd时,我可以看到所有错误。
1)我可以看到错误。但我想向少数角色或用户展示这一点。 2)如何在一定时间内显示错误? 3)如何在发生错误时设置警报
我在哪里做这个配置以及如何做?
谢谢 哈
答案 0 :(得分:1)
您可以在web.config中使用ASP.net授权保护elmah.axd,如下所示:
<location path="elmah.axd">
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>
错误的持续时间取决于您配置的持久性方法。我建议使用某种类型的数据库来存储错误:SQL Server,SQLite或SQLCE,这样你就可以按计划清理错误,或者只是永远保留错误。
要配置电子邮件提醒,您需要在web.config中添加一些内容。首先,找到您的ELMAH sectionGroup并添加errorMail部分,如下所示:
<configSections>
<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" />
</sectionGroup>
</configSections>
然后将错误邮件设置添加到您的ELMAH组:
<elmah>
<security allowRemoteAccess="0" />
<errorLog type="Elmah.SqlErrorLog, Elmah" />
<errorMail from="errors@domain.com" to="errors@domain.com" subject="ELMAH error" smtpPort="25" smtpServer="localhost" />
</elmah>
您还可以查看维基以获取更多选项或更多信息: http://code.google.com/p/elmah/w/list