`

如何快速统计RoR网站的访问量

    博客分类:
  • Ruby
阅读更多
原文: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")  

那么每天就会产生一个诸如production.log.20070702这样的日志文件。

一、统计每日动态请求处理总数
cat production.log.20070702|grep "200 OK"|wc -l 

/* 我用的是自己写的logger.info的内容统计的 */
打印日志文件,挑选正确处理的请求行,统计行数,一条shell命令就搞定了网站处理的动态请求数量。虽然动态请求数量不等于网站访问量,但是可以作为一个重要的参考指标。

二、统计URL的访问频度

网站管理员都很希望知道哪些频道受欢迎被访问的频繁,哪些URL格外受到关注,不必寻求专业的网站流量统计系统,一条shell命令就搞定了:
cat production.log.20070702 |grep "200 OK" | awk '{print $17}'|sort|uniq -c | sort -r -n > stat.log 

打印日志文件,挑选正确处理请求行,把第17列即URL那一列挑出来,排序,统计唯一URL出现的次数,按照URL次数倒序输出到stat.log文件里面,让我们看看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]
   .........

网站首页被访问了10096次,论坛频道首页被访问了3590次,......

是不是很爽?我们用一条shell命令可以做简单的网站访问统计系统了。那么用Java做的系统,能不能这样统计呢?其实照样可以。你可以在tomcat的配置文件里面设置输出详细的日志信息,然后照样用shell命令搞定。
分享到:
评论

相关推荐

    Source.Insight.v3.5中英文

    7. **搜索和索引**:Source Insight具有强大的搜索功能,能快速定位到代码中的特定字符串或符号,同时建立索引以便快速访问。 8. **统计分析**:提供代码统计功能,可以帮助开发者了解代码结构和质量,进行代码审查...

    BlueHost注册和使用图解

    - **其他功能:**包括日志文件和网站统计、错误页面定制、防盗链等功能。 - **自动安装程序:**集成Fantastico自动安装程序,可轻松安装多种流行的应用程序。 - **电子商务功能:**支持SSL加密、OSCommerce、Agora ...

    网络安全监控 Snorby.zip

    在Ruby on Rails框架下,Snorby利用了RoR的MVC(模型-视图-控制器)架构,确保代码组织清晰且易于维护。Rails框架提供了丰富的库和插件,使得开发过程更为高效,同时支持快速迭代和定制化需求。 **Snorby的关键特性...

    庄晓丹:基于Clojure实现的移动云平台

    该平台旨在为开发者提供一站式的移动应用开发解决方案,帮助他们减少服务器端及客户端的开发工作量,从而更好地专注于产品的核心功能和服务质量。 #### 移动应用的发展趋势与挑战 随着移动互联网的快速发展,移动...

    编程技巧大全

    通过使用16位上数停电保持计数器,即使在电源中断的情况下也能确保计数器的数值不会丢失,从而确保日产量统计数据的准确性。 **2.3 产品出入库数量监控(32位上下数计数器)** 产品出入库的数量监控对于库存管理至关...

    台达 DVP-PLC 应用技术手册

    - **9.2 SUM/BON“1”个数统计和判断**:统计位组中“1”的个数。 - **9.3 MEAN/SQR平均值与平方根**:计算一组数据的平均值或求平方根。 - **9.4 MEMR/MEMW文件寄存器访问**:访问文件寄存器中的数据。 - **9.5 ANS...

    optisys PCS300编程手册

    #### 一、OptiSYS快速入门 **1. 软件安装** - **OptiSYS软件安装要求:** - 操作系统版本要求:需要明确指出支持的操作系统类型及其版本。 - 硬件配置需求:包括CPU型号、内存大小等。 - 存储空间要求:安装...

Global site tag (gtag.js) - Google Analytics