1 文档编写目的
本文档介绍HP Diagnostics应用服务器监控工具的安装、配置、作用以及影响。
2 HP Diagnostics组件介绍
2.1Diagnostics Probe
Diagnostics Probe(探针)负责从应用程序中捕捉各种事件、对象,计算度量信息并将结果发送到Diagnostics Server。Java Probe还提供剖析功能,能获取到与被测程序有关的更细节的诊断信息。
2.2Diagnostics Servers
Diagnostics Servers负责协调Probe及其他HP软件,处理从各个组件搜集的性能诊断数据,并以各种视图的形式展示出来。
Mediator模式的Diagnostics Server接受来自Probe的诊断数据,并通过进一步处理和计算,生成可供在视图上展示的数据。
Commander模式的Diagnostics Server负责调控Diagnostics各个组件及其他外部产品(LoadRunner Controller、Performance Center等),跟踪各个组件的工作状态。Commander模式的另一个作用是为最终用户提供一个监控各种性能视图,执行各种参数配置的界面。同时Commander模式的Diagnostics Server也拥有Mediator模式的Server的数据处理功能。
2.3Diagnostics结构图
l 一套Diagnostics系统中包括至少一个Command模式下的Server,可以包含0-N个Mediator模式的Server
3 HP Diagnostics安装及配置
3.1HP Diagnostics 系统硬件配置要求
3.1.1Diagnostics Server
Platform |
Item |
Up to 10 Probes |
Up to 20 Probes |
Up to 10 Probes |
Windows |
CPU |
1X1.0GHZ |
1X2.0GHZ |
2X2.4GHZ |
Windows |
Memory |
768MB |
1GB |
3GB |
Solaris |
CPU |
1XUltra Sparc 2 |
2XUltra Sparc 2 |
2XUltra Sparc 3 |
Solaris |
Memory |
1GB |
1.5GB |
3GB |
Linux |
CPU |
1X1.0GHZ |
1X2.0GHZ |
2X2.4GHZ |
Linux |
Memory |
768MB |
1GB |
3GB |
HP-UX |
CPU |
1X1.0GHZ |
1X2.0GHZ |
2X2.4GHZ |
HP-UX |
Memory |
768MB |
1GB |
3GB |
All |
Java Heap |
350MB |
700MB |
1400MB |
All |
Disk |
3 GB per probe |
3.1.2Diagnostics JAVA Probe
Platform |
All Platforms |
Memory |
50 MB Additional RAM |
Free Hard Disk Space |
200 MB Additional Space |
3.2HP Diagnostics 系统安装
3.2.1Diagnostics Server安装
在Windows系统下安装Diagnostics Server的步骤如下:
l 从安装文件所在文件夹中运行DiagnosticsServerSetupWin_8_00.exe
l 阅读许可文档
l 选择安装路径
l 选择Server运行在Commander模式或Mediator模式下
l (如果选择了安装Commander模式的Server)选择时间同步方式,用于同步一套Diagnostics系统,这里选择Synchronize with system time。
l 选择Diagnostics Server是否与HP其他软件产品一起工作,没有的话直接选择Next
l 确认安装选项,开始安装
l 结束安装
3.2.2Windows下Diagnostics JAVA Probe安装
在Windows系统下安装Diagnostics JAVA Probe的步骤如下:
l 从安装文件所在文件夹中运行JavaAgentSetup_win_8_00.exe。
l 阅读许可文档。
l 选择安装目录。
l 确认安装选项,开始安装。
l 结束安装,自动弹出Agent配置界面。
选择如上图所示,点击“下一步”。
l 填写探针名称和组名称,以便在服务器端识别,组名称使用Default也可,点击“下一步”。
l 填写Diagnostics Server的IP地址及端口号,点击“下一步”。
l 配置后选项,勾选“运行JRE Instrumenter…”
l 添加JVM,选择复制参数。
l 将复制的参数添加到WebLogic启动文件中,重新启动WebLogic服务器。
3.2.3UNIX下Diagnostics JAVA Probe 安装
Diagnostics Java Probe在IBM AIX、HP UNIX以及Linux操作系统中安装方法一致。唯一的区别是不同的平台有不同的安装文件。例如:AIX平台的安装文件为JavaAgentSetup_ibm_8_00.bin、HP平台的安装文件为JavaAgentSetup_hp11x_8_00.bin。
下面以AIX平台root用户安装Java Probe为例进行说明:
一、以二进制方式上传安装文件至服务器。
二、执行 #chmod 755 JavaAgentSetup_ibm_8_00.bin授予文件可执行权限。
三、执行 #./ JavaAgentSetup_ibm_8_00.bin -console,根据提示进行安装即可,注意设置Java Probe的安装目录,此处假设为 /MercuryDiagnostics。
四、修改/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/etc下的三个配置文件配置Java Probe:
1、 dynamic.properties修改配置如下:
mediator.host.name=IP (diagnostics8服务器IP地址)
mediator.port.number=2612 (代理端与服务器的通信端口,默认2612)
2、 dispatcher.properties修改配置如下:
registrar.url=http://IP:2006/commander/registrar/
(diagnostics8服务器IP地址和端口)
3、 probe.properties修改配置如下:
active.products=Enterprise
id=lcam
group=szcomtop
五、进入/opt/MercuryDiagnostics/JavaAgent/DiagnosticsAgent/bin,运行如下命令:
#./jreinstrumenter.sh –i /usr/java5(应用所使用的JVM的安装路径)
生成一段代码。
六、将生成的代码添加到WebLogic启动文件中,重新启动WebLogic服务器。
4 HP Diagnostics 基本功能
打开IE浏览器输入http://<diagnostics_server_host>:2006,可打开Diagnostics Server使用界面如下:
点击Open Diagnostics,输入用户名密码(均为admin)进入监控主界面
在此界面中选择对应的应用程序,可打开该应用程序的各种监控视图
Diagnositcs系统组织结构定义:
l Diagnostics System可包含多个Application,通过Diagnostics Server(Commander)的监控界面可以查看所有被监控的Application状态
l Application被监控程序,一个Application中可以包含多个Probe Groop
l Probe Group Probe组,可以是一组职能相近的Probe的集合
l Probe一个探针
4.1Server Summary View
l 最上方的Status视图列出Probe Group中的所有Probe,选择任意一个Probe就会列出该Probe的一些系统级的诊断信息。
l 左下方的All Aggregate Requests视图显示近5分钟内延迟最严重的Top 5请求(注意这个Top5是针对所有Probe侦测的所有请求而言的,如果需要观察某个Probe的Top5延迟请求,需要使用Filter)
l 右下方的Alert Events显示最近5个发声的Alert Notification(可以针对Server、Host、Probe Group、Probe设置各种Alert Notification Rule,当系统状况打到某个条件时发送Notification)
4.2Application Metric View
l 该视图显示过去5分钟内CPU使用率最高的5个Application
l 鼠标移动到某一条趋势线会有详细信息列出,见下图(这里的Latency延迟我不是太理解是指哪个对象的延迟,应该是指请求在应用程序的延迟)
4.3Dependent Services View
l 该视图显示延迟最严重的5个Dependent Services
l Dependent Services应该是指JDBC、RMI、WebServices、ADO(.NET)等非应用层的外部服务单元
l 上面是每个Dependent Services 的 Services Call View,显示针对这个Services的Top 5延迟的Services Call
4.4Host View
l 显示CPU使用率最高的5台服务器
4.5Load View
l 该视图显示Load值最高的前5个Layer
l Load值计算方法:
Load = Average Latency / Point Duration
其实Average Latency是指所有线程在当前Layer中的平均执行时间,Point Duration是一个合计的粒度值。
4.6Outbound Calls View
l 该视图显示延迟最高的5个Outbound Calls
l Diagnostic监控的Outbound Calls类型包括:
Ø Web Service
Ø RMI. Calls between Java servers.
Ø RFC (SAP R/3). Calls between SAP servers.
Ø CICS. Calls within an IBM environment.
Ø JMS. Calls between Java servers and message servers.
4.7Probe View
l 该视图显示JVM使用率最高的5个Probe信息。
l 视图对象表格
l 双击某个Probe会显示该Probe的Server Request View。
4.8SQL Statements View
l 该视图显示执行时间最长的5条SQL语句
l 默认是从所有Probe Group中的所有Probe上执行过的所有SQL语句中筛选,如果需要查看某个Probe的SQL执行情况,请使用Filter
l SQL语句的执行时间需超过设置的限定值才会在本视图中显示,限定值在相关配置文件中设置,默认限定值为1s。
l Details中列出所选SQL语句的执行位置、执行方法、次数、超时率等信息
4.9Aggregate Requests and Server Requests View
Aggregate Requests View
Server Requests View
l 显示响应时间最长的5个Aggregate Request和Server Request
l Aggregate Request和Server Request的区别,Aggregate Request的响应时间包括server requests 和 dependent service calls的时间。
l Server Request的视图对象表的细节
显示请求的类型、请求发起的源码位置(Package、Method等)
l 在Server Request视图中,当选择了某个Server Request,视图中将会高亮该Request的趋势线,同时会
点击途中的、、图标,将会显示当前Request的Instance Tree(CallProfile)视图,其中各图标的含义如下:
A maximum instance tree,响应时间最长时的内部调用轨迹
A median instance tree,响应时间中等时的内部调用轨迹
A minimum instance tree,响应时间最短时的内部调用轨迹
典型的Instance Tree视图如下:
4.10 Status Views
l 显示系统中所有Probe Group、Probe、Host的概要信息及当前状态
4.11 Topology View
l 根据发送的请求的执行路径,获取并显示当前应用的网络拓扑图。
4.12 Transactions View
l 该视图显示响应时间最长的5个事务。
4.13 Trended Methods View
l 显示执行时间最长的5个方法,要对特定类、方法进行监测,需修改相关配置文件。
4.14 Layers View
l 该视图显示执行时间所占比重最高的5个Layer的延迟时间
l 视图对象表格细节
4.15 Call Profile View
l Call Profile Graph显示一个Server Request的方法调用过程,高亮最耗时的方法调用步骤
l Call Tree Table以制表的形式列出Call Profile Graph的调用过程,包括每个层级中各个方法调用的耗时、占比、使用的CPU时间等
l Details Pane显示某个方法调用的一些详细信息
4.16 Collections and Resources Views
Collections Views
l 该视图可以按照Collection Size或者growth排列显示出排名前5的Collection信息
Resources Views
l 该视图显示element数量前5位的Resource,Resource是指各种jar包
5 Diagnostics分析功能
访问J2EE Diagnostics Profiler的URL:
http://<probe_host>:<probeport>/profiler 其中probeport默认为35000
工具栏的几个按钮:
l Refresh实时刷新最新数据
l Garbage Collection 强制垃圾回收
l Reset 重置计数和时间信息
l Link to Product information
l Help 打开On-line help
5.1使用Summary Tab来分析性能
l Summary Tab显示当前Probe的JVM内存使用情况、Load值和最慢的Requests
l 在Memory视图点击“drill into”按钮会显示堆的细分内容(详细请见Collection Tab章节)
l 在Load视图中会根据不同的层显示每个层的Load值,见下图:
l 在Slowest Requests视图中点击每个Request,会弹出对应的Call Profile View
5.2使用Hotspots Tab来分析性能
l Hotspots Tab显示耗时最长的方法、CPU时间使用最久的方法及执行时间最长的SQL语句
l 点击“view all methods”将链接到All Methods Tab,点击“view all SQL”将链接到All SQL Tab
l 在Slowest Methods和CPU Hotspots两个视图中点击某个方法,都会跳转到该方法的Call Profile 视图
l 在Slowest SQL视图中点击某个SQL语句,会显示完整版的SQL语句
5.3使用Metrics Tab来分析性能
5.4使用Threads Tab来分析性能
5.5使用All Methods Tab来分析性能
l 显示方法名、总耗时、平均耗时、被调次数、异常数、总CPU时间、平均CPU时间、所属层级
l 双击方法会显示该方法的Call Profile View
5.6使用All SQL Tab来分析性能
l 所有SQL的执行情况
5.7使用Exceptions Tab来分析性能
l 所有异常情况及次数
5.8使用Server Requests Tab来分析性能
l 所有Server Requests的统计信息。
5.9使用Web Services Tab来分析性能
l 现在最慢的前四个Web Service Operations(Inbound Call)和Outbound Web Service Calls
6 Diagnostics监控工具安装后风险分析
Ø 安装Diagnostics Server需要更改计算机MAC地址,要确保该机器允许修改MAC地址。
Ø Diagnostics Server与应用服务器是两台机器,安装Diagnostics Server不影响应用系统。
Ø Diagnostics服务器通过应用服务器上的Diagnostics Probe(探针)获取通过应用服务器的信息,进行监控。探针对服务器的影响微小,可忽略不计。
Ø 探针如果出现问题,导致weblogic服务无法启动,紧急情况可将添加在startWebLogic.sh文件中的那段代码去掉即可。