我在哪里可以找到IIS日志?

Kja*_*tan 318 iis logging iis-7 diagnostics

我正在尝试从第三方设置应用程序,这需要在我的本地IIS中托管支持网站.我完全按照安装指南中的说明创建了一个网站,但是我遇到了一些问题,并希望看到IIS日志的内容.令人尴尬的是,问题是我找不到日志文件!

所以我的问题是:默认情况下IIS7在哪里存储日志?

jis*_*shi 484

我认为访问日志的默认位置是

%SystemDrive%\inetpub\logs\LogFiles
Run Code Online (Sandbox Code Playgroud)

否则,请在IIS管理器下检查,在左窗格中选择计算机,然后在中间窗格中,转到IIS区域中的"日志记录"下.在那里,您将获得所有站点的默认位置(但在所有站点上都可以覆盖)

你也可以调查一下

%SystemDrive%\Windows\System32\LogFiles\HTTPERR
Run Code Online (Sandbox Code Playgroud)

其中包含仅代表错误的类似日志文件.

  • 如果找不到,则表示未安装.您需要启动"程序和功能",然后单击左侧的"打开或关闭Windows功能",然后选择"Internet信息服务\万维网服务\健康和诊断\ HTTP日志记录" (65认同)
  • 我在`C:\ Windows\system32\LogFiles\W3SVC1`中找到了我的日志 (6认同)
  • 我相信后一个路径(...\HTTPERR)是http.sys生成的日志文件默认登陆的地方,而不是IIS本身的日志文件.请参阅:https://technet.microsoft.com/en-us/library/cc784703%28v=ws.10%29.aspx (3认同)
  • 谢谢,这似乎合乎逻辑,但日志目录是空的。我可能需要以某种方式打开日志记录,但我在 IIS 管理器的中间面板中找不到有关日志记录的任何信息。 (2认同)
  • 如果您正在寻找错误消息,则此日志无用。 (2认同)

Raf*_*fid 94

我相信这是一种更简单的方法来了解IIS日志的位置,而不仅仅是假设一个默认位置:

转到您的IIS站点,例如Default,单击它,如果启用了日志记录,您应该看到右侧的"Logging":

在此输入图像描述

打开它,你应该看到那里的文件夹:

在此输入图像描述

别客气!

  • 在IIS10上,"日志记录"功能要求至少安装"万维网服务 - >运行状况和诊断 - > HTTP日志记录"窗口功能.否则它不会出现. (5认同)

Joe*_*Lee 75

我正在添加这个答案,因为在研究了网络之后,我最终得到了这个答案,但仍然不知道要查看IIS日志文件夹的哪个文件夹.

如果您的服务器有多个网站,则需要知道该网站的IIS ID.在IIS中获取此功能的简单方法是只需单击左侧面板中的" 站点"文件夹即可.每个站点的ID显示在右侧面板中.

一旦你知道ID,我们称之为n,相应的日志位于IIS logs文件夹的W3SVC n子文件夹中.因此,如果您的网站ID为4,并且IIS日志位于默认位置,则日志位于此文件夹中:

%SystemDrive%\inetpub\logs\LogFiles\W3SVC4
Run Code Online (Sandbox Code Playgroud)

致谢:

  • @jishi的回答告诉默认日志的位置.
  • @Rafid的回答解释了如何找到实际位置(可能不是默认位置).
  • @Bergius的回答提供了一种编程方式来查找特定网站的日志文件夹位置,将ID考虑在内,而不使用IIS.

  • 关于IIS中的网站ID以查看正确的日志文件,这一点非常重要. (7认同)
  • 在"连接"面板中选择站点后,通过单击"动作"面板中的高级设置找到了ID. (3认同)

Mic*_*ick 14

日志文件的默认位置的100%正确答案是......

%SystemDrive%\inetpub\logs\LogFiles
Run Code Online (Sandbox Code Playgroud)

是的,您可以将其输入到资源管理器地址栏中.

要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. 可以在"目录"字段中找到该站点的日志文件的位置

编辑:正如在评论中指出安迪下面你需要确保安装您当选启用HTTP IIS日志记录时,否则HTTP记录将不可用.

启用HTTP日志记录

  • @Andy 您是否阅读了答案的第二部分并检查了 IIS 中网站的配置? (3认同)
  • 我在“程序和功能”>“打开或关闭 Windows 功能”中缺少所需的“HTTP 日志记录”模块。在上面找到了关于此的评论,并创建了 LogFiles 目录。感谢您的跟进。 (3认同)

Ber*_*ius 9

更简单的方法是使用PowerShell,如下所示:

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

或者干脆

Get-Website yoursite | % { $_.logFile.Directory, $_.id }
Run Code Online (Sandbox Code Playgroud)

如果你只是需要自己的信息,不介意解析你的脑中的结果:).

对于奖励积分,请附加| ii到第一个命令以在资源管理器中打开,或| gci列出文件夹的内容.


Tom*_*lek 7

尝试Windows事件日志,可以有一些有用的信息

  • 看起来好主意,但这里有很多信息,我似乎找不到任何与IIS相关的信息.有关事件查看器中查找位置的任何指针,或者如何最好地过滤信息? (18认同)
  • -1,原因:这个答案太笼统了.请提供详细说明,在事件日志中可以找到信息,或者如何过滤信息,否则如果事件日志中的日志中包含大量日志,则很难找到相关日志. (6认同)
  • 事件日志可能会在站点上发生任何页面错误. (2认同)