日志分析器,计算“页面上的时间”?

我需要了解我的网站上每个页面的平均“页面时间”或“页面浏览时间”,而不需要客户端脚本(如使用onunload事件处理程序)。

是否有免费的日志分析仪能够做到这一点? 我看了Webalizer,AWStats和Analog,但他们似乎没有这样的function。 最接近的是AWStats中的“访问时间”,但是我希望看到“页面浏览时间”。

我知道,没有客户端脚本,访问者跟踪是不准确的,但是我能忍受。 谷歌分析似乎提供了一个“页面上的时间”指标,而不挂钩onunload事件(但纠正我,如果我错了),所以我相信这是可能的。

我向你推荐关于你的networking日志什么是不可知的模拟文档 ,特别是作者写的部分:

你不知道人们花了多长时间阅读每一页。 再一次,你不能分辨出在连续的页面请求之间他们正在阅读哪个页面。 他们可能正在阅读他们之前caching的一些页面。 他们可能已经从您的网站上链接了一个链接,然后再回来。 他们可能已经打断了他们的扫雷游戏。 你只是不知道。

你不能说出人们在你的网站上花了多长时间。 除了前面的问题之外,还有另外一个完整的展示器。 在网站上报告时间的程序会统计第一个和最后一个请求之间的时间。 但是他们没有把最后一页的时间计算在内,而且这通常是整个访问的大部分时间。

模拟作者斯蒂芬·特纳(Stephen Turner)是一位光明的人 – 前剑桥统计学家 – 我倾向于同意他的看法。 他在我上面发送的链接中certificate了他的论点。

模拟会告诉你什么是你的网站统计肯定可以知道的,它会告诉你很快。 试图获得更多的是猜测,如果你想猜测,为什么付钱给其他人呢? 随机数字发生器是五便士,所以使用其中一个代替。

正如Madhatter所写,依靠这些信息的日志将不会给出准确的图片。 此外,与大多数统计数据一样,您必须花费大量时间考虑您实际测量的内容 – 人们是在网页上花费时间,因为它很有趣,或者因为它很难理解? 在javascript中捕获数据会导致完全不同于查看日志的行为(请考虑当用户打开多个窗口时会发生什么情况)。

AFAIK,没有可用的工具,商业或免费的做这种分析 – 包括谷歌分析(有问题 :你能提供一个参考吗?)。 但是编写自己的代码并不是过度征税 – 但是您肯定需要使用mod_usertrack或者需要使用会话来区分用户,并将相关的cookie和MIMEtypes一起logging下来,这意味着您不再使用标准日志格式。

另一方面,同样的机器也可以让你开始研究caching的有效性和点击stream分析(也是目前大多数分析仪所欠缺的领域)。

那么使用Google Analytics呢? 我用它 – 很好。

警告:这种方法可能会也可能不会向您的networking服务器的性能召唤无法形容的恐惧。


如果你运行的是PHP或者类似的脚本语言,你可以做一些非常非常丑陋的事情,比如:

在您要追踪的页面的页脚中:

 <iframe src="/path/to/script.php?src=<?php echo htmlentities($_SERVER['REQUEST_URI']); ?>&user_ip=<?php echo $_SERVER['REMOTE_ADDR']; ?>" width="1" height="1" style="visibility:hidden;"></iframe> 

在“script.php”或任何您select命名您的计时器脚本:

  <?php if ( @isset( $_GET['src'] ) { $source = filter_var( $_GET['src'], FILTER_SANITIZE_STRING ); } else { /* no source page to track */ die(); } if ( @isset( $_GET['minute'] ) ) { $minute = (int) $_GET['minute'] + 1; } else { $minute = 0; } $uri_refresh = ($_SERVER['HTTPS'] != 'on') ? 'http://' : 'https://'; $uri_refresh .= $_SERVER['HTTP_HOST']; $uri_refresh .= '/path/to/script.php'; $uri_refresh .= '?src=' . $source; $uri_refresh .= '&user_ip=' . $_SERVER['REMOTE_ADDR']; $uri_refresh .= '&minute=' . $minute; ?> <html> <head> <meta http-equiv="refresh" content="60;url=<?php echo $uri_refresh; ?>"> <title>Timed Logger</title> </head> <body style="color:#FFFFFF;"> <p>You have been viewing this page for <?php echo $minute; ?> minutes.</p> </body> </html> 

…然后通过查看服务器日志中不同minute值的相对stream行度,可以大致了解人们在多长时间内查看事物。

倪火Web日志分析器支持这个function。 这不是免费的,但在他们的网站上有30天免费评估版,function齐全。