Отслеживание неудачных запросов IIS не работает

Отслеживание неудачных запросов IIS не работает

Я настроил трассировку невыполненных запросов на IIS 8, но она не регистрирует ошибки, как ожидалось; есть страница ASP Classic, которая генерирует "500 Internal Server Error", но папка FailedReqLogFiles пуста. Вот моя настройка:

  • Модуль отслеживания неудачных запросов установлен

  • Чтобы отследить ошибку № 500, генерируемую страницами ASP Classic, я настроил следующие правила:

<traceFailedRequests>
    <add path="*">
        <traceAreas>
            <add provider="ASP" verbosity="Verbose" />
            <add provider="ISAPI Extension" verbosity="Verbose" />
            <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,RequestNotifications,Module,FastCGI,WebSocket,RequestRouting" verbosity="Verbose" />
        </traceAreas>
        <failureDefinitions timeTaken="00:00:00" statusCodes="500-999" />
    </add>
</traceFailedRequests>
  • Поскольку существует более 100 веб-сайтов, я установил enabled="true"в настройках по умолчанию:
<siteDefaults>
    <traceFailedRequestsLogging enabled="true" directory="%SystemDrive%\inetpub\logs\FailedReqLogFiles" maxLogFiles="50" />
  • Наконец я создал тестовую страницу, которая выдает ошибку:
<%
Option Explicit
Response.Write a ' Variable is undefined: 'a'
%>

Ошибка регистрируется, %SystemDrive%\inetpub\logs\FailedReqLogFilesкак и ожидалось, но ошибки, сгенерированные фактическими страницами контента, не регистрируются. Отличие этих страниц в том, что они вызываются через Rewrite Module, а URL выглядит так:https://example.com/about.htmlвместоhttps://example.com/about.asp

Как это исправить?

решение1

ВЭта статьяесть записка, в которой говорится:

Если трассировка неудавшихся запросов была установлена ​​после модуля URL rewrite, область "Rewrite" в Trace Providers может быть недоступна. Если вы не видите область "Rewrite" в списке, перейдите в Add/Remove programs и запустите установщик модуля URL rewrite в режиме восстановления.

Я переустановил модуль URL Rewrite, затем заново создал правило трассировки неудачных запросов, убедившись, что «Rewrite» присутствует (и выбран) в разделе «области» провайдера «WWW Server».

Неудачные запросы впоследствии регистрировались и содержали информацию, отсутствовавшую в средстве просмотра событий, например, полный URL-адрес страницы, вызвавшей ошибку, и трассировку стека.

Связанный контент