博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

如何使用Diagnostics工具监控应用服务器

Posted on 2012-10-17 18:13  徐正柱-  阅读(2534)  评论(0编辑  收藏  举报

1        文档编写目的

本文档介绍HP Diagnostics应用服务器监控工具的安装、配置、作用以及影响。

2        HP Diagnostics组件介绍

2.1Diagnostics Probe

Diagnostics Probe(探针)负责从应用程序中捕捉各种事件、对象,计算度量信息并将结果发送到Diagnostics ServerJava Probe还提供剖析功能,能获取到与被测程序有关的更细节的诊断信息。

2.2Diagnostics Servers

Diagnostics Servers负责协调Probe及其他HP软件,处理从各个组件搜集的性能诊断数据,并以各种视图的形式展示出来。

Mediator模式的Diagnostics Server接受来自Probe的诊断数据,并通过进一步处理和计算,生成可供在视图上展示的数据。

Commander模式的Diagnostics Server负责调控Diagnostics各个组件及其他外部产品(LoadRunner ControllerPerformance Center等),跟踪各个组件的工作状态。Commander模式的另一个作用是为最终用户提供一个监控各种性能视图,执行各种参数配置的界面。同时Commander模式的Diagnostics Server也拥有Mediator模式的Server的数据处理功能。

 

2.3Diagnostics结构图

 

l         一套Diagnostics系统中包括至少一个Command模式下的Server,可以包含0-NMediator模式的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.2WindowsDiagnostics JAVA Probe安装

Windows系统下安装Diagnostics JAVA Probe的步骤如下:

l        从安装文件所在文件夹中运行JavaAgentSetup_win_8_00.exe

l        阅读许可文档。

l        选择安装目录。

l        确认安装选项,开始安装。

l        结束安装,自动弹出Agent配置界面。

 

选择如上图所示,点击“下一步”。

l        填写探针名称和组名称,以便在服务器端识别,组名称使用Default也可,点击“下一步”。

 

l        填写Diagnostics ServerIP地址及端口号,点击“下一步”。

 

l        配置后选项,勾选“运行JRE Instrumenter…

 

l        添加JVM,选择复制参数。

 

l        将复制的参数添加到WebLogic启动文件中,重新启动WebLogic服务器。

3.2.3UNIXDiagnostics JAVA Probe 安装

Diagnostics Java ProbeIBM AIXHP UNIX以及Linux操作系统中安装方法一致。唯一的区别是不同的平台有不同的安装文件。例如:AIX平台的安装文件为JavaAgentSetup_ibm_8_00.binHP平台的安装文件为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 ServerCommander)的监控界面可以查看所有被监控的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侦测的所有请求而言的,如果需要观察某个ProbeTop5延迟请求,需要使用Filter

l        右下方的Alert Events显示最近5个发声的Alert Notification(可以针对ServerHostProbe GroupProbe设置各种Alert Notification Rule,当系统状况打到某个条件时发送Notification

4.2Application Metric View

 

l        该视图显示过去5分钟内CPU使用率最高的5Application

l         鼠标移动到某一条趋势线会有详细信息列出,见下图(这里的Latency延迟我不是太理解是指哪个对象的延迟,应该是指请求在应用程序的延迟)

4.3Dependent Services View

 

l        该视图显示延迟最严重的5Dependent Services

l         Dependent Services应该是指JDBCRMIWebServicesADO.NET)等非应用层的外部服务单元

 

l        上面是每个Dependent Services Services Call View,显示针对这个ServicesTop 5延迟的Services Call

4.4Host View

 

l        显示CPU使用率最高的5台服务器

4.5Load View

 

l        该视图显示Load值最高的前5Layer

l         Load值计算方法:
Load = Average Latency / Point Duration
其实Average Latency是指所有线程在当前Layer中的平均执行时间,Point Duration是一个合计的粒度值。

4.6Outbound Calls View

 

l        该视图显示延迟最高的5Outbound 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使用率最高的5Probe信息。

l         视图对象表格

l        双击某个Probe会显示该ProbeServer Request View

4.8SQL Statements View

 

l        该视图显示执行时间最长的5SQL语句

l        默认是从所有Probe Group中的所有Probe上执行过的所有SQL语句中筛选,如果需要查看某个ProbeSQL执行情况,请使用Filter

l        SQL语句的执行时间需超过设置的限定值才会在本视图中显示,限定值在相关配置文件中设置,默认限定值为1s

l         Details中列出所选SQL语句的执行位置、执行方法、次数、超时率等信息

4.9Aggregate Requests and Server Requests View

Aggregate Requests View

 

Server Requests View

 

l        显示响应时间最长的5Aggregate RequestServer Request

l        Aggregate RequestServer Request的区别,Aggregate Request的响应时间包括server requests dependent service calls的时间。

l         Server Request的视图对象表的细节

 

显示请求的类型、请求发起的源码位置(PackageMethod等)

l         Server Request视图中,当选择了某个Server Request,视图中将会高亮该Request的趋势线,同时会

 

点击途中的、、图标,将会显示当前RequestInstance TreeCallProfile)视图,其中各图标的含义如下:

A maximum instance tree,响应时间最长时的内部调用轨迹

*      A median instance tree,响应时间中等时的内部调用轨迹

*     A minimum instance tree,响应时间最短时的内部调用轨迹

典型的Instance Tree视图如下:

4.10    Status Views

 

l        显示系统中所有Probe GroupProbeHost的概要信息及当前状态

4.11    Topology View

 

l        根据发送的请求的执行路径,获取并显示当前应用的网络拓扑图。

4.12    Transactions View

 

l        该视图显示响应时间最长的5个事务。

4.13    Trended Methods View

 

l        显示执行时间最长的5个方法,要对特定类、方法进行监测,需修改相关配置文件。

4.14    Layers View

 

l        该视图显示执行时间所占比重最高的5Layer的延迟时间

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排列显示出排名前5Collection信息

Resources Views

 

l        该视图显示element数量前5位的ResourceResource是指各种jar

 

5        Diagnostics分析功能

访问J2EE Diagnostics ProfilerURL

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显示当前ProbeJVM内存使用情况、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 MethodsCPU 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 OperationsInbound Call)和Outbound Web Service Calls

 

6        Diagnostics监控工具安装后风险分析

Ø         安装Diagnostics Server需要更改计算机MAC地址,要确保该机器允许修改MAC地址。

Ø         Diagnostics Server与应用服务器是两台机器,安装Diagnostics Server不影响应用系统。

Ø         Diagnostics服务器通过应用服务器上的Diagnostics Probe(探针)获取通过应用服务器的信息,进行监控。探针对服务器的影响微小,可忽略不计。

Ø         探针如果出现问题,导致weblogic服务无法启动,紧急情况可将添加在startWebLogic.sh文件中的那段代码去掉即可。