Logparser 的用法

 Logparser是一款非常强大的日志分析软件,可以帮助你详细的分析网站日志。是所有数据分析和网站优化人员都应该会的一个软件。Logparser是微软的一款软件完全免费的,大家可以在微软的官网上去下载,下载地址:

http://www.microsoft.com/en-us/download/details.aspx?id=24659

   下载后安装也非常简单,只要按照步骤去安装就可以了,虽然软件语言是英语但是都是比较容易的。

使用方法

打开logparser

logparser使用方法及常用操作命令

 

    出现的是这个类似命令行的窗口,我们就是在这个窗口输入各种命令对日志进行分析。那我们怎么去运行呢?

最基本的格式:LogParser i:输入文件的格式 –o:输出格式 “SQL语句”

    我们输入一个最简单的例子,把一个IIS日志转化成一个csv格式的表格,那么我们应该怎么做呢?

C:\Program Files\Log Parser 2.2> logparser -i:iisw3c -o:csv “SELECT *FROM C:rizhi.log” >D:rizhi.scv

   这就是完成了最简单的转换,把C盘中rizhi.log这个日志转换成csv格式并保存到D盘。我们要注意的是-i:iisw3c-i代表的是输入iisw3c代表的是日志格式,例子中分析的是iis日志,因此标准格式的iisw3c-o:scv-o 代表的是输出,csv是输出文件的格式。”SELECT*FROM”这个是分析日志的SQL命令语句,我们可以用不同的SQL语句来分析日志。

注意:logparser是区分大小写的,因此SQL语句一定要用大写,不然会出错的。

 

明白了logparser怎么去用,那么接下来给大家介绍一些我们经常用到的操作命令。

--对日志中的url进行归并统计 

LogParser -o:csv "SELECT cs-uri-stem, COUNT(*) into a.csv FROM iis.log GROUP BY cs-uri-stem" 

--取出所有的asp页面
SELECT COUNT(*) FROM ex040528.log WHERE EXTRACT_EXTENSION(cs-uri-stem) LIKE 'asp'

--求出各个路径的访问次数
SELECT cs-uri-stem, COUNT(*) FROM ex040528.log GROUP BY cs-uri-stem

--求出各个资源类型的访问次数
SELECT EXTRACT_EXTENSION(cs-uri-stem) AS PageType, COUNT(*)
FROM ex040528.log
GROUP BY PageType

--group by两个东东
SELECT EXTRACT_EXTENSION(cs-uri-stem) AS PageType, sc-status, COUNT(*)
FROM ex040528.log
GROUP BY PageType, sc-status

--求出各个资源类型的访问次数,并按访问次数降序排列
SELECT EXTRACT_EXTENSION(cs-uri-stem) AS PageType, COUNT(*) AS PageTypeHits
FROM ex040528.log
GROUP BY PageType
ORDER BY PageTypeHits DESC

--求出各个页面类型,各种返回结果占总点击数的比重
SELECT EXTRACT_EXTENSION(cs-uri-stem) AS PageType, sc-status, MUL(PROPCOUNT(*), 100.0) AS Hits
FROM ex040528.log
GROUP BY PageType, sc-status
ORDER BY PageType, sc-status

--求出各个页面类型、各种返回结果的点击数占各种页面类型点击数的百分比
SELECT EXTRACT_EXTENSION(cs-uri-stem) AS PageType, sc-status, MUL(PROPCOUNT(*) ON (PageType), 100.0) AS Hits
FROM ex040528.log
GROUP BY PageType, sc-status
ORDER BY PageType, sc-status
--求解各种类型的客户端环境占总环境数的百分比
SELECT DISTINCT cs(User-Agent) as IEType,count(*) as total,mul(propcount(*),100) as [percent(%)]
FROM F:/挑战赛资料/ex081213.log
group by IEType

转义字符:
/
注意:
order by后只能有一个desc或者asc
order by的项必须要在select子句中
having子句必须紧跟group

 --查出哪个IP访问最频繁

SELECT c-ip, COUNT(*) as c FROM 'F:\iislog\u_extend7237.log' GROUP BY c-ip
order by c desc

--查出哪个页面哪个IP访问最频繁

SELECT c-ip, COUNT(*) as c FROM 'F:\iislog\u_extend2.log'
Where TO_LOWERCASE(cs-uri-stem) ='/msearch/result/'
GROUP BY c-ip
order by c desc

 

--查出指定页面200状态最多的ip,

SELECT c-ip, COUNT(*) as c FROM 'F:\iislog\u_extend2.log'
Where TO_LOWERCASE(cs-uri-stem) ='/msearch/result/'
and sc-status=200
GROUP BY c-ip
order by c desc

 

--统计哪个ip,哪个页面被访问得最多

SELECT c-ip,cs-uri-stem,COUNT(*) as c FROM 'F:\iislog\u_extend9681.log' GROUP BY c-ip,cs-uri-stem
order by c desc

 

--统计指定IP,访问各个页面次数

SELECT cs-uri-stem, COUNT(*) as c FROM 'F:\iislog\u_extend9681.log'
where c-ip='112.47.159.76'
GROUP BY cs-uri-stem
order by c desc

posted @ 2014-09-22 19:44  LoveCoder  阅读(8201)  评论(0编辑  收藏  举报