[转]使用webalizer来分析nginx日志

webalizer是一个高效的、免费的web服务器日志分析程序。其分析结果是HTML文件格式,从而可以很方便的通过web服务器进行浏览。Internet上的很多站点都使用webalizer进行web服务器日志分析。Webalizer具有以下一些特性: 1.是用C写的程序,所以其具有很高的运行效率。在主频为200Mhz的机器上,webalizer每秒钟可以分析10000条记录,所以分析一个40M大小的日志文件只需要15秒。 2.webalizer支持标准的一般日志文件格式(Common Logfile Format);除此之外,也支持几种组合日志格式(Combined Logfile Format)的变种,从而可以统计客户情况以及客户操作系统类型。并且现在webalizer已经可以支持wu-ftpd xferlog日志格式以及squid日志文件格式了。 3.支持命令行配置以及配置文件。 4.可以支持多种语言,也可以自己进行本地化工作。 5.支持多种平台,比如UNIX、linux、NT, OS/2 和 MacOS等

Webalizer配置 webalizer的默认配置文件为/etc/webalizer.conf,当启动Webalizer时没有使用“-f“选项时,Webalizer就会寻找文件/etc/webalizer.conf,也可以使用“-f”来指定配置文件(当服务器有虚拟主机时,就需要配置多份不同的webalizer配置文件,不同的虚拟主机的webalizer使用不同的配置文件。 Webalizer.conf配置文件中需要修改的配置选项如下: LogFile /data1/logs/access.log LogType clf 指定的日志类型 用来指示配置文件的路径信息,webalizer会将该日志文件作为输入进行统计分析; OutputDir /data0/htdocs/blog/logs 用来指示生成的统计报表的保存目录,在前面我们使用alias,使得用户可以使用http://www.medcl.com/logs/来访问统计报表。 HostName www.medcl.com 用来指示主机名,统计报表中会引用该主机名。 其他选项就无需修改,配置文件修改完毕以后,就需要在定时webalizer,每天生成当日的统计分析。 以root身份运行:crontab -e 进入定时运行任务编辑状态,加入如下任务: 00 0 * * * /usr/bin/webalizer […]

elasticsearch技术交流群,欢迎加入

新建了2个qq群,欢迎大家一起交流elasticsearch方面的相关内容。 群1:190605846(已满) 群2:211682609(欢迎)2012/05/28更新 另外,已经刚申请了elasticsearch.cn域名,打算组建一个elasticsearch在国内的交流社区,整理收集相关的资料文档,方便新手学习elasticsearch和促进elasticsearch在国内的推广。 第一步,打算先将官方的站点的文档翻译下,毕竟目前还没有比那更完善的文档了,由于文档比较多,所以在这里希望能招募有共同想法的童鞋一起来完成这项伟大的工作。 有什么想法请留意或加QQ群吧。 you know for search , :)

vmware ippool

vCenter Server ippool配置 如果要设置VApp的IP为自动分配,需要事先设置DataCenter的IP Pool,VApp是什么可以看这里:http://itknowledgeexchange.techtarget.com/virtualization-pro/what-are-ip-pools-and-vapps/ 注意,每一个DataCenter只能用一个IPPool配置。 还需要设置虚拟机的Option下VApp Options设置,设置Enabled为true。 另外,在VApp Settings设置里面,如果要设置Ip Allocation Policy的类型为下面的两种,必须先设置Advanced里面的IP Allocation,这个我找了半天,汗。 设置Ip Allocation Schema之后,前面IPAllocationPolicy对应的选项就可以选了。

Diving Into ElasticSearch(10)精确控制之Routing使用

前面一篇介绍parent-child的使用,我们来回顾一下: 1.先建好mapping和索引几条数据

2.获取一下这几条数据看看

结果:

没有问题,我们再试试后面的

结果:

嘿嘿,发现了么,居然是404,你可以继续试试后面的id为3的也是404,id为4的可以出来 试试:http://localhost:9200/news/comment/2?parent=1(索引时的path)

哈哈,貌似不行o.(ps:其实kimchy可以实现这个url pattern,但是目前没有) 那正确的方式是怎样的呢?

答案就在routing,ES帮助:http://www.elasticsearch.org/guide/reference/mapping/routing-field.html 使用我写的partial_update插件也是支持routing的,如下:

结果:

发散一下,parent=2试试:

结果:

很明细,/news/comment/4存在两条记录,routing的出现,使ES的id的唯一性丢失了,并且删除索引记录的时候也必须带上routing才行,此外,查询的结果中可能会出现重复的_id。

再看看查询的操作,查询的时候可以指定routing,默认不区分routing,即全部扫描:

总之,一旦你决定使用routing,你必须保证对这些routing做到心中有数。 补充一下: 什么是routing,为什么用routing,正常情况下,索引是根据type和id通过hash取模的方式来存储到不同的shard里面的,查询的时候则是在整个shard组里面做的,即每个shard都要参与查询,然后合并各个查询结果,想想,如果shard多了之后,其实有些shard里面可能根本就没有我们需要的数据,这样就浪费了很多不必要的查询操作,routing就是可以按照一定的规则,建索引的时候,就可以指定数据存放在哪个shard里面,这样查询的时候,同理,通过routing规则就能够保证有的放矢,只在一个shard里面去进行查询,而不是到处撒网,这样不就快多了吗?当然用routing也有缺点,由于索引存放位置由我们自己控制,并且由于routing值不均匀,肯定会造成索引数据不均匀,即某几个shard里面什么数据也没有,某几个shard里面数据扎堆,数据扎堆的shard肯定对性能有影响,so,怎么用,自己决定!

Diving Into ElasticSearch(9)Parent-Child特性使用

介绍下ElasticSearch里Parent-Child特性的使用。 //首先创建一系列新闻的索引,这里我们将hot类型作为parent-chid关系里面的parent。

git push与分支操作

Diving Into ElasticSearch(8)Mapping&Schema

前面应该介绍过ES是Schema Free,但是Schema Free不是说没有Schema,和Solr一样,ElasticSearch也可以设置document的schema,ES里的名字叫Mapping,其实无非就是设置document包含哪些Field,然后对每一个Field个性化的设置索引类型,是否存储,以及设置索引分析器和查询使用的分析器,Es和Solr相比有一个我认为最好的特性:就是支持Object类型,你可以像操作对象一样对对象的某个属性进行索引和查询,简单演示如下:

how to use dottrace’s remote debugging

加参数 /console 启动,每次输入phrase来进行验证,或者使用目标系统的用户来登录 或者安装成服务,但是服务的方式就不能使用phrase来进行验证了。 windows7下正常连接调试器,但是windows2008R2+IIS7调试器连接失败,据小马哥说重启之后好使了,未试过。

This header must be modified using the appropriate property

  You can see above that copying the headers collection from one request into another is going to cause the problem.  The following is a list of request and response headers that must be set via properties instead of […]

godaddy+qeephp的rewrite配置

不知道什么原因,godaddy服务器抽风,php环境变量的doc_root及temp变量的路径和实际的路径对应不上,另外rewrite也出问题。 N年不玩qeephp,折腾了一会,记录一下: 根目录修改php.ini

qeephp配置文件/config/environment.yaml里 url_mode确保为rewrite

站点根目录.htaccess