IIS 网络日志分析(Sharepoint 文档库审计)

IIS 网络日志分析(Sharepoint 文档库审计)

我有一个特殊要求,需要分析 IIS 网络日志并查看哪些用户(按用户名)访问过特别的页面子集。

谁能推荐一个好的分析工具来从日志中获取这些信息。

我查看过的 SmarterLogs 和 WebLog Expert 似乎要么列出访问过页面的用户数量(而不是具体是谁)。并且不提供选择您感兴趣的页面的功能...

谢谢,

抱歉再次提出这个问题。看来 IIS 日志中没有我想要的信息。我正在寻找 SharePoint 2003 文档库中每个用户对文档的请求。看来必须在 SharePoint 中启用此日志记录http://msdn.microsoft.com/en-us/library/dd583134(v=office.11​​).aspx

有人在 SP2003 中尝试过此操作吗?我还可以使用 Log Parser 吗?

答案1

我最喜欢的工具是 Log Parser(最初由 Peter 推荐),它的学习难度有点大,但用途非常广泛。Microsoft PFE 有一篇非常好的博客文章,介绍了使用 Log Parser 从 IIS 日志中获取数据的常见查询,其中一些查询可能会让您快速了解您想要提取的内容:http://blogs.technet.com/b/clinth/archive/2010/01/07/w3c-iis-log-analysis-using-log-parser.aspx

还有一个名为“Log Parser Lizard”的 Log Parser GUI 工具,它可以为您简化操作:http://www.lizard-labs.net/default.aspx

我还发现有人在 IIS.net 上发布了一个免费工具,可能值得一看,但我自己还没有尝试过:http://www.iis.net/community/default.aspx?tabid=34&i=1864&g=6

约翰

答案2

如果您熟悉编写 SQL 查询,则一种选择是将它们导入到 SQL Server 等数据库中。网上有这方面的记录,Microsoft 的做法是http://support.microsoft.com/kb/296085

另一种方法可能是使用诸如 Microsoft 的 Log Parser 之类的工具,但它使用类似的查询语言。 http://www.microsoft.com/download/en/details.aspx?id=24659

答案3

如果您可以将“页面子集”描述为正则表达式,则以下 ruby​​ 应该可以解决问题(将日志输入到标准输入中):

users = []
$stdin.each_line { |l| next unless l =~ %r{interestingpagesregex}; u = l.split(/\s+/)[1]; users << u unless users.include? u }
puts users

相关内容