我有一个特殊的要求来分析IIS Web日志,并查看哪些用户(通过用户名)访问了特定的页面子集。
任何人都可以推荐一个好的分析工具从日志中获取这些信息。
我看过SmarterLogs和WebLog Expert的人似乎要么列出了用户(而不是谁)访问页面的数量。 而不要select你感兴趣的网页…
谢谢,
为重新打开这个问题抱歉。 看来IIS日志没有我以前的信息。 我正在查找SharePoint 2003文档库中的每个用户对文档的请求。 看来这个日志logging必须在SharePoint中启用http://msdn.microsoft.com/zh-cn/library/dd583134(v=office.11).aspx
有没有人试图在SP2003之前做到这一点? 我还可以使用Log Parser吗?
我最喜欢的工具是Log Parser(最初由Peter推荐),它有一些学习曲线,但是它的function非常强大。 Microsoft PFE有一个相当不错的博客文章,用于通过Log Parser从IIS日志中获取数据,其中一些查询可能为您提供了一些解释: http:// blogs .technet.com / b / clinth /存档/ 2010/01/07 / W3C-IIS日志分析-使用日志,parser.aspx
Log Parser还有一个名为“Log Parser Lizard”的GUI工具,它可以简单地为您提供: http : //www.lizard-labs.net/default.aspx
我还发现一个免费的工具,有人发布在IIS.net可能值得一看,但我还没有尝试过自己呢: http ://www.iis.net/community/default.aspx?tabid=34&i = 1864&G = 6
约翰
如果您熟悉编写SQL查询,则可以select将其导入到SQL Server等数据库中。 这是logging在整个networking上,微软在http://support.microsoft.com/kb/296085
另一种方法是使用诸如Microsoft的Log Parser之类的工具,但是它使用了类似的查询语言。 http://www.microsoft.com/download/en/details.aspx?id=24659
如果您可以将“页面的子集”描述为正则expression式,那么下面的ruby应该可以做到这一点(将日志input到标准input中):
users = [] $stdin.each_line { |l| next unless l =~ %r{interestingpagesregex}; u = l.split(/\s+/)[1]; users << u unless users.include? u } puts users