1

我已将 elmah.mvc 包含到 Asp.Net MVC 应用程序中,用于记录异常和自定义错误日志。它完全按预期工作,我可以使用 SQL Server 查看我的 ELMAH_Error 表中的日志,也可以通过本地主机 URL ( http://localhost:20086/elmah ) 从 Web 界面查看日志。

我的问题是:如果可能的话,我如何通过实时站点上的 Web 界面而不是“ http://localhost:20086/elmah ”来查看我的日志。我希望能够在必要时从任何计算机上查看日志记录信息。我已经实现了角色和身份验证,所以我应该能够访问正确的 URL,使用适当的凭据登录,然后查看日志......对吗?这可能吗??

4

1 回答 1

3

没问题。您可以使用 ASP.NET 身份验证来保护您的日志。基本上你想要这样的东西:

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

此ELMAH 教程中有更多详细信息。

看起来您正在使用 Elmah.MVC 包。有了这个包,你有另一个选择:

<add key="elmah.mvc.requiresAuthentication" value="true" />
<add key="elmah.mvc.allowedRoles" value="admin" />
于 2015-12-15T17:43:05.843 回答