LoadRunner 中配置监控Oracle

发表于:2021-7-16 09:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:果汁分我一半    来源:掘金

  Oracle 是目前世界上大型应用系统广泛使用的数据库,Oracle 数据库产品为财富排行榜上的前1000 家公司所采用,许多大型网站也选用了Oracle 系统。Oracle 内部结构比较复杂,如图8.1 所示,出现性能问题的可能性是比较大的。因此在性能测试过程中,应该密切关注Oracle的性能表现,收集和监控Oracle 性能数据。
  要通过LoadRunner 监控Oracle,首先必须在Controller 所在的机器上安装Oracle 客户端,然后配置好服务名,用sqlplus 确认可以连接Oracle,之后就可以在Controller 中配置Oracle 连接,配置的方法如下。
  (1)打开Controller,选择监控图中的“Database Server Resource Graphs - Oracle”,如图8.2 所示。
  (2)添加监控,监控引擎选择“LoadRunner native monitors”单选按钮,如图8.3 所示。
  (3)然后添加需要监控的Oracle 所在的服务器IP 地址,如图8.4 所示。
  (4)输入Oracle 服务器的登录账号,如图8.5 所示。
  (5)选择需要监控的Oracle 计数器,如图8.6 所示。
  添加完监控IP 后如图8.7 所示。
  确定之后即可在Controller 的监控图表中看到收集的Oracle 性能数据,如图8.8 所示。
  (6)修改Oracle 监控数据的收集频率。
  LoadRunner 默认间隔10 秒收集一个Oracle 性能数据,数据取样的间隔太短会对Oracle 数据库性能造成一定的影响,如果想调整收集频率,可打开LoadRunner 安装目录中的dat\monitors\vmon.cfg 文件,修改其中的sample rate。
  需要注意的是LoadRunner 限制监控Oracle 收集性能数据的最小间隔是10 秒,如果设置低于这个值,会按10 秒间隔来收集。
  (7)添加自定义计数器。
  LoadRunner 在vmon.cfg 文件中设置了可收集的Oracle 性能计数器,如果希望自己定义收集的性能数据,可修改此文件,添加相应的SQL 语句来定义计数器。
  例如,可在LoadRunner 安装路径的\dat\monitors 找到vmon.cfg 文件并修改如下:
  [V$ Monitor]
  Counters=150
  CustomCounters=9
  ;How many seconds for each data sample?
  SamplingRate=10
  [Custom0]
  ;Name must be unique
  Name=库快存命中率
  Description=该计数器返回当前库快存命中率
  Query=SELECT 100*((sum(pins-reloads))/sum(pins)) from v$librarycache
  IsRate=0
  [Custom1]
  ;Name must be unique
  Name=高速缓存区命中率
  Description=oracle database shoot straight
  Query=SELECT round(1-SUM(PHYSICAL_READS)/(SUM(DB_BLOCK_GETS) +
  SUM(CONSISTENT_GETS)), 4) * 100 FROM (SELECT CASE WHEN NAME='physical reads' THEN
  VALUE END PHYSICAL_READS,CASE WHEN NAME = 'db block gets' THEN VALUE END
  DB_BLOCK_GETS,CASE WHEN NAME = 'consistent gets' THEN VALUE END CONSISTENT_GETS
  FROM V$SYSSTAT WHERE Name IN ('physical reads','db block gets','consistent
  gets'))
  IsRate=0
  [Custom2]
  ;Name must be unique
  Name=共享区库缓存区命中率
  Description=命中率应大于0.99
  Query=Select round(sum(pins-reloads)/sum(pins) * 100, 2) from v$librarycache
  IsRate=0
  [Custom3]
  ;Name must be unique
  Name=共享区字典缓存区命中率
  Description=命中率应大于0.85
  Query=Select round(sum(gets-getmisses-usage-fixed)/sum(gets) * 100, 2) from
  v$rowcache
  IsRate=0
  [Custom4]
  ;Name must be unique
  Name=检测回滚段的争用
  Description=应该小于1%
  Query=select round(sum(waits)/sum(gets) * 100, 2) from v$rollstat
  IsRate=0
  [Custom5]
  ;Name must be unique
  Name=检测回滚段收缩次数
  Description=应该小于1%
  Query=select sum(shrinks) from v$rollstat, v$rollname where v$rollstat.usn
  = v$rollname.usn
  IsRate=0
  [Custom6]
  ;Name must be unique
  Name=监控表空间的I/O 读总数
  Description=监控表空间的I/O
  Query=select sum(f.phyrds) pyr from v$filestat f, dba_data_files df where
  f.file# = df.file_id
  IsRate=0
  [Custom7]
  ;Name must be unique
  Name=监控表空间的I/O 块读总数
  Description=监控表空间的I/O
  Query=select sum(f.phyblkrd) pbr from v$filestat f, dba_data_files df where
  f.file# = df.file_id
  IsRate=0
  [Custom8]
  ;Name must be unique
  Name=监控表空间的I/O 写总数
  Description=监控表空间的I/O
  Query=select sum(f.phywrts) pyw from v$filestat f, dba_data_files df where
  f.file# = df.file_id
  IsRate=0

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号