IIS 7.0高级日志logging:每个网站的日志文件是否可能?

我们目前已经启用了正常的IIS日志function,并且select了"One log file per: Site"选项,允许每个网站都有自己的日志文件。 我只是设置IIS高级日志logging,找不到一个可比的选项。 所有网站的高级日志logging正在一个文件中完成。 如何设置高级日志logging以便每个网站都有自己的日志文件?

以下是目前的情况:

  • 在机器级别上,我启用了“高级日志logging”并指定了D:\Logs日志目录。
  • 对于每个网站,我指定了一个唯一的日志目录,例如D:\Logs\Website1
  • 完成这些更改后,我使用命令提示符通过运行iisreset重新启动了IIS,并成功地收到了预期的stop/start响应。
  • 所有日志logging仍在D:\Logs目录中的单个日志文件中完成。 在网站特定的目录中没有创build新的日志文件。

这可以通过为每个站点创build日志定义来实现。 将每个日志定义命名为与您希望收集日志的站点相对应,并为要logging到该文件的特定站点启用它们。 Microsoft在“高级日志logging”自述文件中详细介绍了这一点:

启用和禁用Web站点的日志logging。 可以在IISpipe理器的服务器级别启用或禁用高级日志loggingfunction,该function还启用或禁用较低级别的日志logging(与服务器级别设置匹配)。 如果要禁用某些Web站点或目录的日志logging,同时启用其他日志loggingfunction,请在服务器级别启用“高级日志logging”function,然后禁用要禁用其日志logging的Web站点/目录的日志定义文件。 要禁用日志定义,请执行以下操作:

  • 在“连接”窗格中,单击要禁用其日志logging的网站或目录。
  • 在网站或目录主页中,双击高级日志logging图标。
  • 在“高级日志logging”function页面中,单击日志定义,然后在“操作”窗格中单击“编辑日志定义”。
  • 在“日志定义”页面中,清除“已启用”checkbox。
  • 在“操作”窗格中,单击“应用”。
  • 如果需要,重复步骤(3)到(5)以获得更多的日志定义。

来源: https : //www.iis.net/learn/extensions/advanced-logging-module/advanced-logging-readme

在过去,我个人在更改站点级别的高级日志logging设置时遇到了麻烦,但是您也可以使用每个日志定义的filter将范围限制为单个站点。