Elmah-error logging-用户 - 访问电子邮件警报

时间:2011-07-06 10:50:00

标签: asp.net-mvc-3

我已配置ELMAH以捕获错误。

当我浏览localhost:portno / elmah.axd时,我可以看到所有错误。

1)我可以看到错误。但我想向少数角色或用户展示这一点。 2)如何在一定时间内显示错误? 3)如何在发生错误时设置警报

我在哪里做这个配置以及如何做?

谢谢 哈

1 个答案:

答案 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