51Testing软件测试论坛
标题:
iis日志运营报告
[打印本页]
作者:
测试积点老人
时间:
2018-12-12 15:11
标题:
iis日志运营报告
一、获取iis日志,通过bat进行合并
执行脚本将多个log合并成一个log
type u_ex160123.log,u_ex160124.log>>12-19.log
复制代码
或者批量
type *.log>>12-19.log
复制代码
二、通过Log Parser 工具将log文本导入到MSSQLServer中
注意:iis的log是零时区,通过TO_LOCALTIME(TO_TIMESTAMP(ADD(TO_STRING(date, 'yyyy-MM-dd '), TO_STRING(time,'hh:mm:ss')),'yyyy-MM-dd hh:mm:ss')) AS RequestTime 将时间转成当前8时区时间。
d:
cd "D:\Program Files (x86)\Log Parser 2.2"
logparser.exe "SELECT TO_LOCALTIME(TO_TIMESTAMP(ADD(TO_STRING(date, 'yyyy-MM-dd '), TO_STRING(time,'hh:mm:ss')),'yyyy-MM-dd hh:mm:ss')) AS RequestTime, * FROM 'E:\work\task\iislog\log\iisAll.log' to temp_lti_WebLog" -i:IISW3C -o:SQL -oConnString:"Driver={SQL Server};server=10.12.75.0;database=mydb;uid=sa;pwd=mypassword;Integrated Security=SSPI" -createtable:ON
pause;
复制代码
这里面记录了:
1. 请求发生在什么时刻,
2. 哪个客户端IP访问了服务端IP的哪个端口,
3. 客户端工具是什么类型,什么版本,
4. 请求的URL以及查询字符串参数是什么,
5. 请求的方式是GET还是POST,
6. 请求的处理结果是什么样的:HTTP状态码,以及操作系统底层的状态码,
7. 请求过程中,客户端上传了多少数据,服务端发送了多少数据,
8. 请求总共占用服务器多长时间、等等。
这些信息在分析时有什么用途,我后面再说。先对它有个印象就可以了。
三、通过sql脚本统计请求总览和请求频率
--001请求总览,按照请求url类别,统计90%请求平均时间以90%最大时间以及所有请求最大最小时间
SELECT * FROM (
SELECT
t1.[csUriStem], t1.Cnt, t1.MaxTime, t1.MinTime,
ROUND(AVG(t2.TimeTaken),0) AS AvgTime90,
MAX(t2.TimeTaken) AS MaxTime90
FROM (
SELECT [csUriStem], COUNT(*) AS Cnt, MAX(TimeTaken) AS MaxTime, MIN(TimeTaken) AS MinTime
FROM temp_lti_WebLog_online_all WHERE HTTP
GROUP BY [csUriStem]
) t1
INNER JOIN (
SELECT ROW_NUMBER() OVER (PARTITION BY [csUriStem] ORDER BY TimeTaken) AS rownum, *
FROM temp_lti_WebLog_online_all
) t2 ON t1.[csUriStem] = t2.[csUriStem]
WHERE t2.rownum <= 0.9 * t1.Cnt
GROUP BY t1.[csUriStem], t1.Cnt, t1.MaxTime, t1.MinTime
) t3
ORDER BY csuristem
复制代码
--002请求频率 (minitue)
SELECT LEFT(CONVERT(VARCHAR(100), requesttime, 108), 5) ,
COUNT(*) AS cnt
FROM [dbo].[temp_lti_WebLog_online_all]
WHERE LEFT(requesttime, 10) = '01 24 2017'
GROUP BY LEFT(CONVERT(VARCHAR(100), requesttime, 108), 5)
ORDER BY LEFT(CONVERT(VARCHAR(100), requesttime, 108), 5)
复制代码
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2