【Loadrunner】性能测试:通过服务器日志获取性能需求
性能测试:通过服务器日志获取性能需求
性能需求的获取无外乎以下几种方法:
1)产品、老大直接制定!
2)参考其他行业;
3)80/20原则;
4)服务器日志获取;
为了测试结果更加准确,最好的结果当然是服务器日志获取,因为这种方式真实有效~但是好多人都苦于不知如何去获取:看不懂服务器日志;拿到日志后无从下手;(PS:这也是本文产生的由来
)下面由鄙人来为大家一一道来~
一)前提
没有明确的性能需求;系统版本已运行很长一段时间,期间所积累的数据足以分析出客户业务使用情况;
二)日志解读(以apache日志为例)
1. apache日志包含什么?
Apache的日志功能主要是指其在运行中对服务器活动进行的记录。日志内容主要涵盖了服务器访问者身份、访问时间、具体访问情况及服务器运行错误信息等;
2.我们需要看哪些?
在Apache采用默认方式安装并运行后,将在安装目录的logs文件夹下生成如图所示的access.log和error.log两种日志文件。
图中左侧为access.log文件,记录所有访问者对服务器进行的详细操作;右侧为error.log文件,记录服务器运行期间,出现的错误与异常等。在此,研究服务器日志的主要目的是获取性能测试需求,即需要了解所有访问者对服务器的具体访问情况。因此,重点关注Apache的access.log文件。 (PS:Apache配置文件为httpd.conf,在配置文件中通过CustomLog命令可以设置日志文件存放路径,如“CustomLog /usr/local/apache/logs/access_log common”)
日志解读:
如上图:
第一部分为127.0.0.1;(远程主机的地址,标明访问者来源)
第二、三部分用“-”进行标识;(第二部分:访问者的email地址或者其他唯一性标识。基于安全考虑,通常用“-”替代;第三部分:访问者的用户名。基于安全考虑,通常也用“-”替代)
第四部分为[02/Jun/2009:22:12:30+0800];(访问请求发生的时间。)
第五部分为”GET /HTTP/1.0”;(访问请求的类型。此信息的典型格式为“方法-资源-协议”。方法包括GET、POST等;资源是指浏览者向服务器请求的文档或URL等;协议通常是HTTP+版本号)
第六部分为200;(服务器返回的状态码,标明请求的结果。如“200”为请求成功,“404”为页面未找到,“500”为服务器内部错误等)
第七部分为40283(响应给客户端的总字节数。)
PS:可在Apache的配置文件httpd.conf中,通过配置LogFormat的参数来自行定制日志文件的记录格式。如:LogFormat "%h %l %u %t \"%r\" %>s %b" common表示日志中记录上述七部分内容。
三) 日志转换为需求
接下来就是重点,将日志转换为我们看的懂得需求。在这里,我们借助WebLog Expert(window日志分析工具)。
(官方网站:http://www.weblogexpert.com;
PS:其他日志分析工具awstats,下载地址:http://awstats.sourceforge.net
1.日志合并
大家都知道IIS日志大部分情况下都是分开显示的,我们要进行日志分析当然希望分析全部日志,这里我们可以借助批处理程序;
步骤如下:
1)导出全部log日志;
2) 在log日志的目录下新建txt文档,编辑文档内容为:type *.log>>all.log,保存为cindy.bat文件。双击bat文件,即可生成all.log文件。
1)双击打开程序,创建日志分析;
2)填好log方式和地址;
3)生成结果;
Activity Statistics(活动统计):General Statistics提供了整个系统在运行期间,某些指标的平均和总计数值,但对性能测试而言,这些平均和总计数值往往是不够的,我们还需要查看一些峰值数据,或者说更希望看到各指标在不同时间段内的值分布情况。Activity Statistics就能提供出每天甚至每小时内各项指标数据,如每日用户访问量、每日点击量、每小时用户访问量、每小时点击量等。根据这些数据生成的图表反应了相关指标的分布趋势和峰值。
Access Statistics(访问统计):Activity Statistics提供每天、每小时的各项指标数据,侧重于各指标在时间上的分布,而Access Statistics反应的是业务或页面等的访问次数。Access Statistics菜单下支持按系统中页面、文件、图片、目录及入口页面的统计分类。Access Statistics可帮助我们确定性能测试的主要业务点(性能测试不同于功能测试,不能针对于整个系统的所有功能都开展性能测试,耗费人力物力且没有实际意义),从而更加真实有效的模拟大量用户的操作。从图表中可得出“每日页面访问趋势”及“最热门的访问页面”,这些信息对性能测试的用例及场景设计具有很强的参考价值。
Visitors(用户统计):提供依据IP来分类统计的点击量、用户访问量及带宽等各指标值。
以上为常用图标,其他图标也能帮助大家定位很多东西,这就需要靠大家去研究啦~!【如Referrers(提交统计):可提供最热站点、最热URL等指标分布数据;Browsers(浏览器统计):可提供用户使用的各类浏览器和操作系统的分配比例,方便大家在性能测试中更真实的模拟用户使用情况;Errors(错误统计):可提供系统运行期间出现错误的统计,通过这些信息能够帮助大家定位系统中存在的问题,进而通过分析问题发生原因,在新版本系统中有效避免等。 】
至此搞定,大家就能够获取到准确真实的性能需求啦,接下来该干嘛干嘛了~!
【Loadrunner】性能测试:通过服务器日志获取性能需求的更多相关文章
- 利用WebLog Experet分析日志获取性能需求
一.下载WebLog Expert日志分析工具 官网下载地址:http://www.weblogexpert.com/download.htm 二.安装 安装很简单,点击“下一步”默认安装即可 三.配 ...
- 本地多张图片采用jmeter上传到ftp服务器的方法和获取服务器日志中某些关键字的基本方法
测试需求: 本地图片上传到ftp服务器里和另外两台不同算法比对服务器进行比对,得出漏检和误检结果:这实际属于功能测试范畴. 测试思路: 第一种方法:使用实际场景的摄像机抓拍图片上传到服务器,用录屏软件 ...
- LoadRunner性能测试巧匠训练营
<LoadRunner性能测试巧匠训练营>基本信息作者: 赵强 邹伟伟 任健勇 丛书名: 实战出版社:机械工业出版社ISBN:9787111487005上架时间:2015-1-7出版日期: ...
- LoadRunner性能测试结果分析(转载)
性能测试的需求指标:本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU使用率.内存使用率分别不超过75 ...
- LoadRunner性能测试样例分析
LR性能测试结果样例分析 测试结果分析 LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源 ...
- 如何学习LoadRunner性能测试?
最近组内同事针对性能测试LR的脚本部分做了介绍,是个不错的分享.会后反思自己也有很长一段时间没做性能测试了,根据以往的经验,有必要做些整理和补充,本文主要介绍一些Loadrunner性能测试的学习方法 ...
- shell 在手分析服务器日志【转】
自己的小网站跑在阿里云的 ECS 上面, 偶尔也去分析分析自己网站服务器日志,看看网站的访问量.看看有没有黑阔搞破坏!于是收集,整理一些服务器日志分析命令,大家可以试试! awk '{print $1 ...
- RobotFrameWork(十三)RobotFramework与loadrunner性能测试结合(基于Remote库)
一般我们进行完功能测试,都需要进行下性能测试,那么这章我来介绍下,RobotFramework与loadrunner性能测试的融合,即运行完自动化功能测试,借助RobotFramework的Remot ...
- python websocket网页实时显示远程服务器日志信息
功能:用websocket技术,在运维工具的浏览器上实时显示远程服务器上的日志信息 一般我们在运维工具部署环境的时候,需要实时展现部署过程中的信息,或者在浏览器中实时显示程序日志给开发人员看.你还在用 ...
随机推荐
- 几个shell程序设计小知识(shell常识部分)
[转自]http://blog.chinaunix.net/uid-168249-id-2860686.html 引用:一.用户登陆进入系统后的系统环境变量: $HOME 使用者自己的目录 $PA ...
- Android学习笔记——Menu(二)
知识点: 这次将继续上一篇文章没有讲完的Menu的学习,上下文菜单(Context menu)和弹出菜单(Popup menu). 上下文菜单 上下文菜单提供对UI界面上的特定项或上下文框架的操作,就 ...
- angular学习(十五)——Provider
转载请写明来源地址:http://blog.csdn.net/lastsweetop/article/details/60966263 Provider简单介绍 每一个web应用都是由多个对象协作完毕 ...
- linux zip压缩和解压的各种操控
1.把/home文件夹以下的mydata文件夹压缩为mydata.zip zip -r mydata.zip mydata #压缩mydata文件夹 2.把/home文件夹以下的mydata.zip解 ...
- 超全面的JavaWeb笔记day11<JSP&Session&Cookie&HttpSession>
1.JSP 2.回话跟踪技术 3.Cookie 4.HttpSession JSP入门 1 JSP概述 1.1 什么是JSP JSP(Java Server Pages)是JavaWeb服务器端的动态 ...
- Unity中Oculus分屏相机和普通相机一键切换
Unity中Oculus分屏相机和普通相机一键切换 一.OCulus 分屏相机介绍 在VR开发工程中,总会觉得OC分屏的处理太慢,严重浪费时间啊! 但是不使用有不好调试,来回切换相机就成为了一个必须. ...
- Set集合遍历方式
for(String str : set) { System.out.println(str); } for (Iterator iter = set.iterator(); iter.hasNext ...
- CALayer的position,anchorPoint属性 与UIView的frame 属性
彻底理解CALayer的position,anchorPoint属性 与UIView的frame 属性 一.position,anchorPoint两者都是CALayer的属性,都是CGPoint点 ...
- php第一例
参考 例子 https://www.cnblogs.com/chinajins/p/5622342.html 配置多个网站 https://blog.csdn.net/win7system/artic ...
- VIM 插入
不知道有多少VIM新手和我当年(去年)一样,信誓旦旦的以为只有i可以插入 唉,现在想想都觉得可笑,都是Windows下的编辑器用多了的结果 鼠标一点,妈妈再也不用担心我的文本插入了……悲剧! 好了,让 ...