如何快速统计RoR网站的访问量
原文:http://www.iteye.com/topic/97287
统计网站的访问量有很多专业的第三方工具,例如Google Analytics,提供强大,而且详细的统计功能。当然,也许不是每个人都需要这么复杂而且操作麻烦的工具,如果你只是需要大概了解一下网站的访问量和访问URL的比例,那么让我们看看最简单最容易的统计工具:Unix Shell。
一个RoR网站的访问纪录,Web Server(Apache or lighttpd)会记录所有的访问请求,包括动态请求和静态请求,但大量图片,JS,CSS的请求对我们没有太大的统计价值,因此web server的日志参考价值就不大。
RoR会记录所有动态请求日志到log/production.log里面,我们要做的就是让RoR进行日志交换,每天产生一个新的日志文件。很简单,修改config/environment.rb
RAILS_DEFAULT_LOGGER = Logger.new("#{RAILS_ROOT}/log/#{RAILS_ENV}.log", "daily")
cat production.log.20070702|grep "200 OK"|wc -l
cat production.log.20070702 |grep "200 OK" | awk '{print $17}'|sort|uniq -c | sort -r -n > stat.log
10096 [http://www.iteye.com/] 3590 [http://www.iteye.com/forums/index] 3446 [http://www.iteye.com/forums/board/Java] 3300 [http://www.iteye.com/index/rss_index_topics] 2477 [http://www.iteye.com/forums/board/Life] 1605 [http://www.iteye.com/forums/board/AJAX] .........