Где я могу найти журналы IIS?

Я пытаюсь настроить приложение от третьей стороны, для чего требуется поддерживающий веб-сайт, размещенный в моем локальном IIS. Я создал веб-сайт точно так, как описано в их руководстве по установке, но у меня возникли некоторые проблемы, и я хотел бы увидеть, что должен сказать журнал IIS. К сожалению, проблема в том, что я не могу найти файлы журнала!

Итак, мой вопрос: где IIS7 хранит журналы по умолчанию?

9 ответов


Я думаю, что это место по умолчанию для журналов доступа составляет

%SystemDrive%\inetpub\logs\LogFiles

в противном случае проверьте в Диспетчере IIS, выберите компьютер на левой панели, а в средней панели перейдите в раздел "ведение журнала" в области IIS. Там вы увидите местоположение по умолчанию для всех сайтов (это, однако, переопределяется на всех сайтах)

вы также можете посмотреть в

%SystemDrive%\Windows\System32\LogFiles\HTTPERR

который будет содержать аналогичные файлы журнала, представляющие только ошибки.


Я считаю, что это более простой способ узнать, где находятся ваши журналы IIS, а не просто предполагать местоположение по умолчанию:

перейдите на свой сайт IIS, например по умолчанию, нажмите на него, и вы увидите "Logging" справа, если ведение журнала включено:

enter image description here

откройте его, и вы увидите папку прямо там:

enter image description here

добро пожаловать!


Я добавляю этот ответ, потому что после изучения интернета я оказался в этом ответе, но все еще не знал, какой папку папки журналов IIS для просмотра.

Если ваш сервер имеет несколько веб-сайтов, вам нужно будет знать идентификатор IIS для сайта. Простой способ получить это в IIS-просто нажать на сайты папка на левой панели. Идентификатор каждого сайта отображается на правой панели.

Как только вы знаете ID, давайте назовем его n, соответствующие журналы находятся в W3SVCn в папке IIS в папке logs. Итак, если Ваш идентификатор веб-сайта равен 4, скажем, и журналы IIS находятся в по умолчанию местоположение и журналы находятся в этой папке:

%SystemDrive%\inetpub\logs\LogFiles\W3SVC4

благодарности:

  • ответ @jishi сообщает, где журналы по умолчанию.
  • ответ @Rafid объясняет, как найти фактическое местоположение (возможно, не по умолчанию).
  • ответ @Bergius дает программный способ найти расположение папки журнала для определенного веб-сайта с учетом идентификатора без использования IIS.

100% правильный ответ для расположения файлов журнала по умолчанию...

%SystemDrive%\inetpub\logs\LogFiles

Да, вы можете ввести это в адресную строку проводника, она будет работать.

чтобы быть на 100% уверенным, вам нужно посмотреть журнал для веб-сайта в IIS.

https://docs.microsoft.com/en-us/iis/get-started/whats-new-in-iis-85/enhanced-logging-for-iis85

то есть

  1. Откройте Диспетчер IIS.
  2. выберите сайт или сервер на панели подключения,
  3. дважды щелкните журнал.
  4. расположение файлов журнала для сайта можно найти в поле Каталог

EDIT: как указал Энди в комментариях ниже, вам нужно убедиться при установке IIS, что вы решили включить ведение журнала HTTP, иначе ведение журнала HTTP не будет доступно.

Enable HTTP Logging


гораздо проще сделать это с помощью PowerShell, например:

Get-Website yoursite | % { Join-Path ($_.logFile.Directory -replace '%SystemDrive%', $env:SystemDrive) "W3SVC$($_.id)" }

или просто

Get-Website yoursite | % { $_.logFile.Directory, $_.id }

если вам просто нужна информация для себя и не против разбора результате в вашем мозгу :).

для бонусных очков, добавьте | ii к первой команде, чтобы открыть в проводнике, или | gci перечислить содержимое папки.


попробуйте журнал событий Windows, может быть какая-то полезная информация


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


Я думаю, что место по умолчанию для ведения журнала IIS:c:\inetpub\wwwroot\log\w3svc


Я нашел файлы журнала IIS в следующем месте.

C:\inetpub\logs\LogFiles\

которые помогают исправить мою проблему.