Просмотр журналов ELMAH через веб-интерфейс в приложении Live
Я включил elmah.mvc в приложение Asp.Net MVC для регистрации исключений и пользовательских журналов ошибок. Он работает полностью, как задумано, и я могу просматривать журналы в своей таблице ELMAH_Error, используя SQL Server, а также через веб-интерфейс через локальный URL-адрес хоста ( http://localhost:20086/elmah).
У меня вопрос: как, если возможно, я могу просматривать свои журналы через веб-интерфейс на живом сайте, а не " http://localhost:20086/elmah". Я хочу иметь возможность просматривать информацию журнала при необходимости с любого компьютера. Я реализовал Роли и Аутентификацию, поэтому я должен иметь возможность перейти по правильному URL-адресу, войти в систему с соответствующими учетными данными, а затем просмотреть журналы.... верно? Это возможно??
1 ответ
Нет проблем. Вы можете использовать аутентификацию 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" />