NMC监控工具使用指南及应用案例

上传人:1777****777 文档编号:38538191 上传时间:2021-11-08 格式:DOC 页数:75 大小:5.05MB
返回 下载 相关 举报
NMC监控工具使用指南及应用案例_第1页
第1页 / 共75页
NMC监控工具使用指南及应用案例_第2页
第2页 / 共75页
NMC监控工具使用指南及应用案例_第3页
第3页 / 共75页
点击查看更多>>
资源描述
NMC监控工具使用指南及应用案例概述2系统要求3架构4部署5部署环境(以NCWAS垂直集群为例)6部署步骤6进程监控13功能概述13MW-XX的监控13DB-XX的监控16线程监控19功能概述19线程信息说明21监控设置22汇总显示24显示过虑25联查操作员26联查数据库27数据库27功能概述27监控客户端功能27CPU监控31功能概述31监控客户端功能31内存监控31功能概述31监控客户端功能32日志抽取32功能概述32NC客户端日志级别设置32日志数据库33NCLOG日志抽取35抽取JVM日志40抽取CPU42抽取内存日志44监控消息和快照信息日志46操作员信息47消息中心48功能概述48监控客户端功能50安全设置52功能概述52监控客户端功能52参数设置53功能概述53监控客户端功能53应用案例一54OVERVIEW54进程监控54线程监控56日志抽取58DB-监控62消息中心62应用案例二 某项目时常出现有几分钟登录不了NC67问题描述:67问题分析:67问题解决方案:75概述对于NC这样一个复杂庞大的系统而言,监控体系非常重要而且富于挑战性。主要表现如下几点:1.NC是多层架构的系统,涉到到客户端,网络,操作系统,中间件,数据库.系统可能出现在任何一点出现异常。2.缺乏离线分析定位的能力。大量的问题只能通过问题再现等方式在线定位。这就要求客户配合,可能还要反复的搭建环境。效率低下,限制多多。3.有很多问题只有专家级的人才能定位。对于不非常了解系统的管理员不知如何下手。4.日志作为分析问题很重要的部件,但其数量庞大,分析起来费时费力,不得要领。5.系统缺乏自我纠正的能力。某个服务器一旦出现问题,比如长时间不响应,只有客户报告后,逐个端口检查一遍才能确定那个服务器有问题,   而且只能管理员手工解决。6.缺乏系统评估的客观数据。对于系统的吞吐量,cpu,内存,并发量,每次远程调用的性能指标等缺乏必要的客观数据。7.监控目标繁多,缺乏统一集成的监控平台。   .   其重要性表现为:1.好的监控系统可以快速发现,定位问题,大幅度降低维护成本,提高管理效率,提高客户满意度。2.在测试阶段,可以快速的发现并定位问题,提高产品质量。3.提供系统自我恢复能力。提高系统可靠性.对于上述问题,nmc智能监控系统主要提供如下特性:1.提供一种集成的监控界面。涵盖了作为问题关注者需要关注的各个方面。使用者可以从多个角度对系统监控和分析。2.提供一种端到端的监控体系。 监控可以从客户端到应用服务器到数据库都可以无缝监控。3.各个层次可以相互穿透.追踪整个操作流程. 进程可以穿透到线程,线程可以穿透到数据库,数据库可穿透到线程。各个层次的部件可以相互穿透。 客户端端可以主动录制自己的操作日志。操作日志本身就提供了多层次的数据。以远程调用为核心,提供服务器端的性能统计, 可以联查到客户端的远程调用堆栈,可联查数据库的操作及性能统计。4.支持插件的可扩展架构,基于服务中心模型集群架构 只要满足客户端或者服务器端的规范的插件就可以很容易地集成进来。 监控服务可以部署到任何一个服务器上,一个监控域可以同时监控多个服务器。在一个监控域内,所有的服务和配置都统一管理, 统一发布。大大提供系统的可监控性和可管理性。5.主动监控 系统提供了一种消息机制。任何监控插件都可以在系统异常情况下可向服务中心发送消息。消息中心根据每个服务的配置对消息进行报警或者 生成快照。这些报警信息或者快照可以通过短信或者邮件通知管理员。管理员利用这些消息可快速采取措施。6.主动管理,自我纠正 系统提供了一种机制,监控到系统处于不健康的状况对系统进行管理。管理的动作是可以配置的。比如,自动重启,或者生成dump. 系统还提供了n+1standby的支持。即有一个standbyserver,在某个server重启时,替换此server继续工作。7.强大的日志抽取和分析能力 可用非常灵活的条件对多个服务器上的日志抽取。包括nc日志,jvm,cpu,memory等日志。并且提供了大量的日志分析脚本来分析日志。 操作员也可主动录制自己的操作日志。可将日志打包后发给相关人员进行分析。8.同时支持实时监控和事后分析。9.采用监控服务提供的安全机制,不用泄漏目标系统的安全信息。系统要求1数据库监控的脚本包括客户端的一些性能监控脚本目前只是支持oracle9i及以上版本。架构 名词解释:监控域:指向同一个服务中心的一组监控进程,这些监控进程可以分布在多个物理服务器上。服务中心(Service Center) :用于注册监控域内所有的服务和资源,同时提供服务启动控制、访问日志、服务请求路由、安全检查、动态参数刷新功能。一个监控域内有且只有一个服务中心,所有的监控进程必须指定到一个已经启动的服务中心。插件说明:后台服务以服务插件的形式提供,配置文件conf/service.xml定义了服务中心地址,服务的属性。包括服务名、是否启动、是否需要安全检查、是否域内唯一、消息处理方式、快照项目。新开发的服务可以直接在service.xml注册。服务启动引擎根据服务配置启动服务,每个服务启动后会向服务中心注册。客户端通过访问服务中心可以把可以访问的服务资源下载到本地。客户端同样采用了插件式的架构,通过配置文件conf/resource/resource-client.xml配置每个服务对应的客户端UI。每个监控域的信息都保存在conf/resource/domain.xml文件中,每次启动客户端会自动连接domai.xml文件中的监控域。 服务中心提供了一种简单的安全机制。管理员可以配置一个用户名和密码。需要安全保护的服务需要通过这个认证才可以被访问。比如数据库,只有通过了安全检查服务的认证才能对数据库操作。部署典型部署图(推荐): 典型模式是 监控服务中心部署在NC的服务器上,监控服务也同时部署在NC的服务器上。独立部署模式:Monitorserver可以部署到一个独立服务器上,但这样不能监控NC Server的NCLOGS、CPU和内存,同样也不能抽取NC Server的NCLOGS,CUP和内存的日志。部署环境(以NCWAS垂直集群为例)ServerHost10.10.71.156服务节点master、ncMem01、ncMem02应用代码目录D:ufsoftnc56APACHE目录D:IBMHTTPServer中间件was6.1.0.11.DM server启动在10.10.71.156,管理端口为8879数据库ORACLE10G部署步骤1:配置服务中心:在server上启动D:ufsoftnc56nmc serverconfigure.bat,设置service center,。这里将服务中心设置为10.10.71.156,管理员默认为admin,密码为admin,端口9999为系统默认,尽量不要改,如果改为其他端口,需要同时改D:ufsoftnc56nm6serverconfserver.xml文件修改对应的端口。 同时修改%nchome%/resources/monitor.properites对应的端口。Local Server中的host可以设置为127.0.0.1或本机的IP地址10.10.71.156。D:ufsoftnc56nmcserverconfigure.bat命令的运行界面如下:说明:运行configure.bat命令需要设置JAVA_HOME: set JAVA_HOME=JDK存放的目录, 如:set JAVA_HOME=././ufjdk 或set JAVA_HOME=D:ufida502nchomeufjdk同样,其它命令,如startmonitor.bat, MonitorConsole.bat等也需要同样的设置。 如果是水平集群,则在从服务器上运行.nmcserverconfigure.bat命令,需要将Server Center中 Host项的值,设置为主服务器的IP地址如:10.10.71.156. Local Server中的host项的值是从服务器的IP地址 如 10.10.71.157 或127.0.0.1注意:Unix如果服务器操作系统无法启动图形界面,可以直接修改配置文件nmcserverconfservices.xml。配置监控安全管理员,可以通过命令securityset.sh修改。2:设置WAS DM服务器,在D:ufsoftnc56nmcserverconfigure.bat的运行界面上的属性配置(monitor.properites)的tab页中修改属性nodeagenthost,nodeagentport。如果不是WAS中间件,则将nodeagenthost设置为空。 如果monitor server监控工具安装在单独的一台机器,则同样需要nodeagenthost设置成集群中WAS DM服务器的IP地址。如果是单个server,没有dm,nodeagent,则查看这个server对应的serverindex.xml或者通过管理控制台,得到SOAP_CONNECTOR_ADDRESS。将nodeagentport设置为这个端口。默认应该是8880。 3:确保D:ufsoftnc56ierpbinprop.xml文件的配置和实际环境的配置相同.特别是中间件为websphere的情况下,prop.xml可能会存在和实际环境不同的情况,因为监控工具通过读这个文件来获取中间件和数据库的信息,所以,必须要确保这个文件的配置和真实环境的配置相符(包括中间件,数据库,web server ).可以通过ncsysconfig.bat对环境配置。 另外,如果上图中的propfile的值不是相对路径././ierp/bin/prop.xml,是指定的绝对路径,则需要用作为分隔符 如 d:monitornc56okierpbinprop.xml,否则启动时会提示找不到文件。特别说明:(1)如果在WAS管理控制台中更改了单个Server或者集群中某个成员Server的端口,一定要在NC的prop.xml文件中修改该对应的端口。否则在NC5.5监控工具的客户端,将会检测不到该端口对应的Server信息。 WEB服务器的地址也要配置,不能为空。如下图(2)如果是数据库是RAC环境,需要prop.xml文件中将数据源拆分成两个针对单个实例的数据源.这样可以保证做快照和数据库检查的性能. 但是,部署时需要用原来的数据源。比如:  <databaseUrl>jdbc:oracle:thin:(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.12.167.11)(PORT=1521)(ADDRESS=(PROTOCOL=TCP)(HOST=10.12.167.12)(PORT=1521)(LOAD_BALANCE=yes)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ncdata)</databaseUrl>改成:<dataSource><dataSourceName>dbsource11</dataSourceName>. <databaseUrl>jdbc:oracle:thin:10.12.167.11:1521:ncdata</dataDbaseUrl>.</dataSource><dataSource><dataSourceName> dbsource12</dataSourceName><databaseUrl>jdbc:oracle:thin:10.12.167.11:1521:ncdata</dataDbaseUrl>.</dataSource>4:消息自动发送邮件的功能邮件配置:邮件服务器(SMTP)可以是任何有效的邮件服务器,如但是,帐号和密码填写针对“发送邮件服务器”有效的帐号和密码。 邮件发送的地址: 在下面属性配置页签,配置消息自动发送到的邮件地址。说明: 邮件发送的地址是填写 任何有效的邮件地址。如: xxx或 xxx 5:在server上启动D:ufsoftnc56nmcserverstartmonitor.bat如果是水平集群,则主服务器启动后,再在从服务器上对应目录运行startmonitor.bat6:启动客户端.可以直接访问http:/10.01.71.156:9999/nmc/client.exe下载客户端。也可以将D:ufsoftnc56nmcclient拷贝到任意一个客户端机器.执行D:ufsoftnc56nmcclientmonitorconsole.bat, 第一次执行在没有监控域的情况下,需要添加监控域, 监控域名称任意,服务中心地址为:10.10.71.156,端口9999,用户名admin,密码xxxxx,(都是在步骤2中配置的)。说明:启动monitorconsole.bat需要设置JAVA_HOME, 如set JAVA_HOME=D:ufida502nchomeufjdk7. 如需要通过代理(192.168.8.108:8080)访问远程的监控服务: monitorconsole.bat增加参数:-DproxySet=true -DproxyHost=192.168.8.108 -DproxyPort=8080 启动后提示如下:需要增加监控域域名可以随意写入NC某项目或10.10.71.156,服务中心地址必须写服务中心(Service Center)的IP地址:如 10.10.71.156 启动后的客户端如 注:进入上图方式:选择一个监控域,工具->overview,或者第一次登陆到监控系统的第一个页面,提供一种整个监控系统的概要信息。主要功能: 1.展现整个系统的部署方式.包括apache,中间件,数据库.2. 动态显示中间件的和数据库的性能指标.中间件动态柱状图显示jvmheap信息,和web线程信息,数据库柱状图显示数据库活动会话的个数.如: 鼠标点中上图的ncMem02图标,会自动显示该成员的信息如下: 3. 报警.如果某个server有报警信息,则相应的服务器会变红,鼠标点上去会显示报警信息.4.服务器端主要的配置文件: (1)安全设置:Monitor/server/conf/security.properties,用于设置对需要安全验证的服务访问的权限用户(2)服务配置:monitor/server/conf/services.xml: (3)各种监控参数配置:monitor/server/conf/monitor.properties 进程监控功能概述进程监控服务主要实现如下功能:1:定时对中间件状态检查,包括端口响应的时间和内存使用的情况,如:当发现中间件不能正常工作,则可以对其自动重启。2:定时将jvm heap的使用情况和中间件webthread,serivcethread信息写入日志,通过日志抽取和分析的功能可以对系统进行性能评估和性能诊断。3:定时更新数据库连接池的信息和数据库活动会话的信息。4:如果是WAS中间件,提供对中间件的管理功能,比如重启,生成javacore,heapdump,设置定时重启等。通过上面的进程监控功能,可以获取NC服务的运行状态、Webcontainer线程池的大小、当前远程调用线程数、当前后台服务的线程数、Jvm heap的max值 、Jvm heap当前的free值、Jvm heap used值、数据库连接池的大小、数据库的活动会话数等,同时根据需要直接在监控工具中定时、关闭和启动NC服务等。MW-XX的监控客户端功能: 定时获得某个中间件的概要信息,包括部署信息和性能信息等。自动刷新设置:设置自动获取服务器信息的频率.可以及时获取最新信息。自动刷新设置后,会有对应于每个中间件的折线图.可以直观的看到每个中间件的内存使用情况.如果使用自动刷新功能,需要先设置,如:点击”自动刷新设置”,弹出对话框,然后设置自动刷新的时间如5秒等,确定后即可。设置自动刷新的秒数间隔: 在进程监控中,可以对NC服务进行启动、停止、重启、定时等。启动:启动选择中间件。停止:停止选择的中间件。重启:重启选择的中间件。定时:为选择的中间件设置定时重起。必须先重起master。打补丁如果需要重启中间件, 可以利用这个功能轮循启动中间件.Dumpthread:对选择中的中间件手工生成Dumpthread。DumpHeap: 对选择中的中间件手工生成DumpHeap。选中上面的任何一行,如ncMem02所在的行,然后双击,则弹出下面的对话框:上图中的字段解释如下:字段说明服务名中间件名称状态有三种状态:Running/down/starting主机中间件服务器地址端口中间件端口重启定时定时重启,可以通过右键或者管理->定时设置Web线程池Webcontainer线程池的大小Web线程当前远程调用线程数服务线程当前后台服务的线程数Jvmmax(m)Jvm heap的设置(max)Jvmtotal(m)Jvm heap当前的total值Jvmfree(m)Jvm heap当前的free值Jvmused(m)Jvm heap used上次端口检查耗时最近一次端口探测的响应时间可管理如果启动was dm,则为true,否则为false.可管理意味着可以远程对中间件进行启动,关闭,生成HEAPDUMP、THREADDUMP.当监控服务发现中间件不响应时,可以根据监控服务配置的管理策略对其自动重启.如果不能管理,则意味着只能做监控.DB-XX的监控客户端功能: DB-XX的监控包括数据库连接池的信息和数据库活动会话的信息等信息。选中上面的任何一行,如ncv55所在的行,然后双击,则弹出下面的对话框,上图字段说明:字段说明数据源数据源名称数据库类型数据库类型连接字符串数据库的jdbc 连接串连接池大小显示为default-max.连接池已用在对应的中间件连接池中有多少连接为使用状态.dbActiveSessions数据库的活动会话数最近检查时间最近进行数据库健康检查的时间同样选中上面的任何一行,如nc56所在的行,然后在工具栏中点击“查询”可以切换到对数据信息进行跟踪的界面. 如下图监控下拉列表中可以看到: 可以查看的数据库信息。可以在nmcclientconfsqlfixsql.cfg,中看到每个查询对应的SQL。 如 选择 监控 下拉列表中的“数据库文件的使用情况“ ,下图中就是查询的结果. 另外,也可以在DB-ncv55中直接写SQL语句,点击工具栏中的“执行”按钮,即可执行自己写的SQL. 如下面是查询NC产品版本信息的SQL。 线程监控功能概述 线程监控包括调试模式的设置,实时线程信息的跟踪,穿透到数据库,联查操作员信息,每个线程的性能统计信息等。 通过这些信息,可以知道线程中SQL的执行时间、从数据库中读取数据到应用服务器的时间、数据从应用服务器传到客户端的时间、发起远程调用的操作员及IP、线程的堆栈、SQL的堆栈等. 这样就可以判断出是个哪个SQL运行耗时,时间是耗在网络上还是数据库读取上,是哪个操作员正在执行的业务,从而可以从业务、网络或SQL上进行优化。线程监控àALL是查看所有中间件的线程。 线程监控à某个具体的服务,如ncMem02是只查看ncMem02上的线程. 线程监控图选中上面的任何一行,如ncMem02所在的行,然后双击,则弹出下面的对话框,可以看到详细的线程信息。 在下面的线程信息说明中对每个字段有详细描述。线程信息说明线程信息说明:字段说明服务全局模式下中间件的名称线程名称线程名称线程状态当前线程状态当前事件当前线程正在做的事件性能统计当前线程到当前的性能统计.耗时当前线程运行到目前的执行时间远程调用方法远程调用方法客户端地址发起远程调用的客户端地址操作员发起远程调用的操作员主键操作员编码发起远程调用的操作员名称操作员名称发起远程调用的操作员名称.性能统计说明:字段说明sqlcosttime当前线程所有SQL的执行时间(不包括fetch 结果集)readresulttime当前线程fetch 结果集的总时间readrownum当前线程共fetch了多少条记录.writetoclienttime当前线程写数据到客户端的时间(网络耗时)writetoclientbytes当前线程写到客户端的总字节数notclosedconnectioncount当前线程没有关闭的数据库连接数线程SQL堆栈说明:字段说明Sql第一条为统计信息,包括sql执行数量总计sql执行时间总计(不包括fetch结果集);占用数据库连接数总计.执行状态有两种状态,running|finished耗时Sql执行时间数据库连接执行sql的数据库连接ID.数据源执行SQL的数据源名称.线程Thead堆栈说明:目前的线程事件:1.获取数据库连接2.sql翻译3.执行sql.4.调用EJB5.序列化6.往客户端写数据7.调用master8.线程到数据库的映射9回滚,提交监控设置1:  全局调试开:除服务线程外的所有的线程默认都是调试模式.2:   全局调试关:所有的线程默认都不是调试模式.3:   选择调试用户:将选择的用户的远程调用设置为调试模式. 此时全局模式自动为关闭状态.4:   取消用户调试:取消用户调试模式.5:    服务线程调试开:在全局模式为开的情况下,服务线程处于调试状态.6:    服务线程调试关:服务线程设置为非调试状态.*监控时,一般不需要Debug模式。只有在的确需要数据库和线程关联起来分析时才用。关于调试模式的说明:一个线程如果是调试状态,则:1:这个线程的所有的数据库操作都会将线程信息映射到数据库.打开全局调试开的方法: 监控设置à全局调试开如,设置全局调试开后,线程监控界面的“调试模式”显示为是。下图红色部分。将用户设置成调试模式方法如下:监控设置à选择调试用户: 弹出如下对话框“选择用户对话框”。选中y1用户,确定后,下图中蓝色行对应的调试模式为“是”。汇总显示将客户端显示的所有服务器的所有的线程信息,包括SQL堆栈和线程堆栈显示在汇总显示.如下图中WebContainer:5 ,拖动右边滚动条可以看到WebContainer:6等。SQL堆栈和线程堆栈的说明,在线程信息说明中有详细的介绍。显示过虑设置当前客户端显示的线程信息的条件.目前有如下过虑条件:线程耗时,操作员编码,操作员名称,客户端地址,服务.默认情况下不显示服务.联查操作员联查当前操作员更加相信的信息(来自于bd_psnbasdoc).点击工具栏中的”联查操作员”,在下图中选择对应的数据库然后就可以看到该操作员的如下信息:联查数据库a)    如果当前的线程事件是执行一个SQL,则联查数据库,直接可以看到当线程在数据库端的状态.包括其执行计划。b)     在数据库端,可以直接将对应的会话kill掉,从而将中间件的线程kill掉.连查询数据库方法同连查操作员方法.连查到数据库后的界面,同 DB-XX中的“查询”按钮功能. 数据库功能概述1. 提供一组数据库健康检查的服务.当发现数据库有性能问题时,发送快照或者报警消息.2. 提供客户端可以调用的数据库操作方法.监控客户端功能监控服务根据配置好的监控脚本对数据库进行实时监控.同时客户端预制了大量的性能监控脚本.对数据库的监控变得非常简单.1. 预制了一些常用的用于性能监控的脚本.如果要增加其他性能监控脚本,直接修改client/conf/sql/fixsql.cfg即可.2. 执行SQL: 在SQL文本区选择要执行SQL的SQL,在工具栏中点执行按钮。3. 根据sql执行的结果集,可能穿透到其他结果集.比如,根据会话信息,可以联查对应的SQL,通过SQL结果集,可以联查到对应得执行计划.4. 对于结果集可以导出到sql/xml/文本.在左边树型结构中,选中 数据库 下对应的数据源,如 ncv55,双击后会在右侧弹出对话框,然后在工具栏中:监控下拉列表中可以看到可以查看的数据库信息. 如 选择 监控 下拉列表中的“数据库文件的使用情况“ ,下图中就是查询的结果. 也可以在DB-ncv55中直接写SQL语句,点击工具栏中的“执行”按钮,即可执行自己写的SQL. 如下面是查询NC产品版本信息的SQL。 查看SQL执行计划的方法:工具栏中“监控->长时sql”, 如下图查询出比较耗时的SQL,然后选中,右键即可显示出该SQL的执行计划。看某执行SQL的执行计划CPU监控功能概述1.  实现了对各种平台的cpu的监控.定时将cpu的运行状态写入日志,便于日后性能分析。2.  当发现某CPU持续高于某阀值,则发送报警消息。监控客户端功能 对服务器端CPU的监控。自动刷新设置:设置CPU性能数据的自动刷新频率.内存监控功能概述日志监控服务对服务器内存进行定时监控.并将内存信息写入日志,便于日后对性能进行分析。监控客户端功能 服务器端内存监控.日志抽取功能概述将NC的日志和监控服务产生的日志(比如:NCLOG,CPU,JVM,内存日志)抽取到本地数据库.同时提供一个客户端的工具,对本地的日志进行分析.NC客户端日志级别设置服务器端的日志输出级别可以根据特定的用户来绑定.如用户A可以把自己的日志输出级别设置为DEBUG, 这样用户A的所有后台操作的日志输出级别都是DEBUG.无论后台的日志默认级别是什么.客户端设置后台日志级别的方法:登陆到NC桌面后,点击右上角的日志,弹出一个日志对话框,设置remote log level.注意: 调试完毕后将它设置成为后台默认的日志级别模式!日志数据库日志数据库一个嵌入式数据库,是存储从NC日志、CPU、内存等抽取的日志信息。数据可以通过抽取的方式获得,也可以通过导入的方式获得。如 工具栏中: 工具à日志数据库 即转换到日志数据库界面。此工具可以对日志数据库进行分析,可以写各种SQL来分析,默认提供了一些常用的脚本。其他脚本可以根据需要通过修改配置文件monitor/client/conf/sql/logsql.cfg来完成。双击上面查询出的结果的任何一行,可以看到相应的信息,如下:日志客户端的一些配置文件:Monitor/client/conf/sql/logsql.cfg:默认的日志分析的sql.Monitor/client/resource/logdb.xml,日志数据库的配置文件,包括日志数据库的信息,和一些默认的表DDL.Monitor/client/logdb/logdb.mdb:默认的日志数据库.NCLOG日志抽取 NCLOG日志抽取是从NC的日志目录nclogs目录中抽取的,抽取的内容包括NC的报错信息,远程调用信息,statement信息,执行方法信息等。抽取的详细信息见表日志表logdetail和日志表summary表。抽取的数据保存在监控工具客户端日志数据库(clientlogdblogdb.mdb)中,NCLOGS日志抽取后保存的表是logdetail和summary, 字段信息保存在nmcclientconfresourcelogdb.xml文件中.日志表logdetail表的信息字段含义id记录IDcallid远程调用的IDuserid操作员IDthread线程名称hostNC服务器的IPportNC 服务器的端口.ts时间戳remotecall远程调用的服务名debuglevelNC的日志级别:如ERROR/INFO/WARNING等msgNC的日志信息:如错误信息,警告信息等costtime耗时flowsize流量serverNC服务器:如:mastr/ncMem01/ncMem0Nfile抽取的NC服务器端日志文件的位置,如:.nclogsncMem01anony-log0.log日志表summary表的信息字段含义id记录IDcallid远程调用的IDremoteCallMethod远程调用方法remoteAddr发起远程调用的客户端地址userid操作员IDthread线程名称begintime线程开始时间costtime线程运行时间sqlcosttime当前线程所有SQL的执行时间(不包括fetch 结果)readrownum当前线程总共fetch了多少条记录.readresulttime当前线程fetch 结果集的时间writetoclienttime当前线程写数据到客户端的时间(网络耗时)writetoclientbytes当前线程写到客户端的字节数notclosedconnectioncount当前线程没有关闭的数据库连接数抽取方法: 选中日志抽取项后,工具栏中:抽取àNCLOG下图是抽取的过程:查看NCLOG日志信息方法:如下图,工具à日志数据,就切换到日志数据界面,然后常用脚本下拉框中预制了:执行方法统计、 statements、 报错信息统计、远程调用统计直接选择 常用脚本à报错信息统计 就会查询出NC的报错信息。也可以在日志数据界面,直接写SQL,如下图,然后点工具栏中的”执行”查询。下面是抽取NCLOG的条件说明:抽取条件说明服务器: 指安装NC的应用服务器,可以使多台服务器。如集群时为多台。时间范围:按照图示的格式输入。操作员:点击“选择操作员”按钮,弹出如下对话框,然后选择对应的操作员即可。 日志文件全名包括(like): 如 输入 master,则抽取的日志信息是master目录下的所有日志信息. 如果输入 summary,则表示抽取日志文件名包含summary的日志。 自定义条件:可以把以下字段作为自定义条件:Id,callid,userid,thread,host,port,ts,remotecall,debuglevel,msg比如以下条件是可以的:Debuglevel=ERROR AND userid=#UAP# and remotecall=nc.ui.test.ITest以下抽取条件只抽取报错信息。抽取JVM日志 JVM的抽取信息为: JVM的最大值、JVM的空闲值及JVM的信息等。通通过这些信息,我们就可以知道NC的某个服务的内存历史使用情况及JVM出现问题的信息等。 JVM的日志抽取是从监控服务器目录nmcserverlogsmw目录中抽取的。抽取的数据保存在监控工具客户端日志数据库中,保存的表是jvmlog。JVM表jvmlog表的信息字段含义server服务器名servernameNC服务名:如:mastr/ncMem01/ncMem0NmaxJVM最大值totaltotalfreeJVM的空闲值ratiofree/totalmsg进程监控输出的信息 如master is not started,wait until it started!wcthreadnum当前web线程数servicethreadnum当前服务线程数wcrange连接池大小file抽取的NC服务器端日志文件的位置,如:.nclogsncMem01anony-log0.log抽取及查看JVM日志方法如下: 抽取àJVM设置好抽取的条件后,点“确定”,下图显示抽取日志的过程。然后,工具à日志数据库 切换到下面的界面。在常用脚本的下拉框中可以通过选择对应的选项查看对应的日志信息。也可以根据需要自己写脚本。表结构信息在nmcclientconfresourcelogdb.xml。抽取CPUCPU的抽取信息为: 服务器cpu的user、sys、wait、idle等。通过这些信息,我们就可以知道CPU的历史使用状况。 CPU的日志抽取是从监控服务器目录nmcserverlogscpu目录中抽取的。抽取的数据保存在监控工具客户端日志数据库中,保存的表是cpulog。CPU表cpulog表的信息字段含义server服务器host机器名cpuidCPU ID号user用户使用百分比sys系统使用百分比waitCPU 空闲期间系统有未完成的磁盘 I/O 请求时的时间百分比idleCPU 空闲并且系统没有未完成的磁盘 I/O 请求时的时间百分比file抽取的CPU日志文件在监控服务器上的文件如:.logscpucpu-uf200703074.log.0 抽取CPU日志及查看方法:抽取àcpu下图显示抽取日志的过程。然后,工具à日志数据库 切换到下面的界面。在常用脚本的下拉框中可以通过选择对应的选项查看对应的日志信息。抽取内存日志内存的抽取信息为: 服务器内存的total、free、pi、po等。通过这些信息,我们就可以知道内存的历史使用状况。 内存的日志抽取是从监控服务器目录nmcserverlogs memory目录中抽取的。抽取的数据保存在监控工具客户端日志数据库中,保存的表是memorylog。内存表memorylog表的信息字段含义server服务器host机器名total内存总值free内存空闲值pipipopofile抽取的内存日志文件在监控服务器上的文件位置:.logsmemorymemory-uf200703074.log.2抽取内存日志及查看方法:抽取àMEMORY设置好抽取的条件后,点“确定”,下图显示抽取日志的过程。然后,工具à日志数据库 切换到下面的界面。在常用脚本的下拉框中可以通过选择对应选项查看对应的日志信息。监控消息和快照信息日志监控消息和快照信息是在消息中心同步消息时抽取到日志数据库的。 监控消息和快照信息抽取是从监控服务器目录nmcserverlogssnapshot目录中抽取的。抽取的数据保存在监控工具客户端日志数据库中,保存的表是message和snapshot。监控消息日志表message的信息字段含义snapshotid快照IDmessage消息的内容service监控服务名snapshotfile快照文件在服务器端的位置:D:ufsoftnc56nmcserver.logssnapshotsnapshot-1242096486515快照信息日志表snapshot的信息字段含义snapshotid快照IDfilename快照文件在服务器端的位置:D:ufsoftnc56nmcserver.logssnapshotsnapshot-1242096486515content快照的内容操作员信息操作员信息包括操作员的名称,操作员编码及监控域名称。操作员信息的抽取方法: 在线程监控中,如下图,点击线程监控下的ALL/ncMem01/ncMem02/master, 如果此时 监控客户端日志数据库中没有操作员信息,则提示是否需要同步操作员信息。同步时即将 操作员的信息保存到监控客户端日志数据库中。操作员日志表operator的信息字段含义cuserid操作员IDuser 操作员名称user_code操作员编码domain监控域名称 操作员信息查看方法: 工具栏: 常用脚本à操作员SQL语句为:select * from message order by ts desc 消息中心功能概述后台的每个监控服务都可以产生监控消息,并将消息发送到消息队列. 如:中间件一个WEB线程运行时间超过180秒仍没有结束则发送快照消息。中间件一个WEB线程执行的SQL最大数量1000,如果超过这个值,则发送快照消息。中间件一个线程最耗时的SQL耗时超过120,则发送快照消息。连接池使用超过70%,则发送快照消息。表空间使用率超过90%,则发送WARNING消息。active的回滚段超过90%,则发送WARNING消息等。消息服务定时从消息队列取到消息,根据消息的内容和服务对消息处理模式的配置,对消息生成快照或者只是作为一条报警消息保存到日志中。根据这些消息,就可以很方便的进行事后分析。这些消息包括:数据库、中间件、进程、cpu、内存等信息。消息由两部分组成:消息概要和快照。快照目前提供中间件线程快照和数据库的快照,根据快照和消息概要很容易进行深入分析系统问题。同时消息中心提供自动发送邮件的功能。消息及快照的生成过程:监控服务根据监控条件生成消息,消息处理服务定时从消息队列中读取消息,根据消息内容及快照项目,请求对应的服务生成快照信息,快照信息生成后返回给消息处理服务,然后消息处理服务写到快照文件中。 消息及快照的生成过程图 快照文件在nmcserverlogssnapshotsnapshotidx.log中有详细记录。monitor.properties文件在nmcserverconfmonitor.properties。services.xml文件在nmcserverconfservices.xml。消息产生的触发点在monitor.properites中配置。服务触发条件值说明进程监控restartWhenCheckMemoryfailuretrue/false检测JVM内存失败是否重启,如果为false,则只是发送报警消息.如果为true,则发送快照信息线程监控MW_THREAD_CHECK_MAXCOSTTIME180中间件一个WEB线程运行时间的阀值,单位为秒.超过这个时间仍没有结束则发送快照消息线程监控MW_THREAD_CHECK_MAXCOUNTOFSQL1000中间件一个WEB线程执行的SQL最大数量,如果超过这个值,则发送快照消息线程监控MW_THREAD_CHECK_MAXCOSTOFONESQL120中间件一个线程最耗时的SQL阀值,单位为秒.如果SQL的耗时超过这个值,则发送快照消息线程监控MW_THREAD_CHECK_CONNECTIONPOOLUSED70连接池使用阀值,单位位百分比.如果连接池使用超过50%,则发送快照消息数据库监控HEALTH_RUNTIME_CHECK_DB_SQL_1HEALTH_RUNTIME_CHECK_DB_SQL_2HEALTH_RUNTIME_CHECK_DB_SQL_3HEALTH_RUNTIME_CHECK_DB_SQL_4详见monitor.properites进行健康检查时执行的脚本,个数最大为4个.检查失败后会发送快照消息.数据库健康检查目前只是支持ORACLE.数据库监控HEALTH_CONF_CHECK_DB_SQL_1详见monitor.properites表空间使用率超过90%,则发送WARNING消息数据库监控HEALTH_CONF_CHECK_DB_SQL_2详见monitor.properitesactive的回滚段超过90%,则发送WARNING消息消息服务手工发送消息客户端主动快照监控客户端功能同步消息:将服务器端产生的消息和本地的数据库进行同步.删除消息:将服务器端的消息和本地的消息进行删除.执行快照:主动发一条快照消息.系统会自动根据配置生成快照.如: 点击“执行快照”,消息处理监控服务就会发送一条消息到消息队列,消息处理服务取到该消息后,根据消息中的内容及快照项目配置信息,请求生成快照,然后生成快找并保存到快照文件。从上图可以看出,已经生成了快照,选中该条快照,则下面的快照栏中就会显示出快照出的对应文件,双击快照栏中的某一行就可以看到相应的信息。下图是一个线程的快照信息。安全设置功能概述1.通过监控服务提供的安全代替监控目标系统的安全.这样的好处是:客户可以不用提供给你真正的数据库密码.因为数据库的密码一般是不变的,但是监控服务的用户名和密码是随时都可以改变的.2.对需要安全检查的服务访问进行安全检查.3.客户端可以动态修改监控管理员用户名和密码.说明:该功能主要是为了更安全的使用监控服务器器,如果不知道监控服务器端的用户和密码,则有些监控功能将不允许使用。监控客户端功能管理员设置:重新设置管理员的用户名和密码.说明该管理员的用户名和密码是指服务器端的监控工具设置的管理员用户名和密码。参数设置功能概述1.   提供一种可以动态修改参数的功能.保存之后马上生效,不需要重启监控服务.2.   有些参数修改后必须要重启监控服务,比如:prop文件nodeagenthost等.3.   所有监控服务器的参数获取都是从service center那里获取的。监控工具启动服务时自动从service center下载最新的参数配置。参数修改时,service center通知所有的其他监控服务器从新刷新参数。监控客户端功能参数值的修改方法: 双击某个参数值进行修改。应用案例一一个真实用户的部署及使用情况如下,可以根据这些信息输出NC系统环境运行报告。OVERVIEW选择一个监控域,工具->overview 通过下图,可以看出该集群中有三台机器。每台机器上分别有两个成员: master ,ncMem01, ncMem02,ncMem03,ncMem04,ncMem05进程监控从进程监控中可以查看每个成员的状态、线程、端口、JVM使用情况等。下图是进程监控中DB状况:可以查看连接池大小,当前活动的sessions等.线程监控从线程监控中可以查看每个线程的状态及sql堆栈等。双击 sql堆栈 中任何一行,如蓝色的行,显示该条的详细信息,如:下图是显示的thread堆栈信息:日志抽取日志抽取可以从多个服务器上抽取日志信息,如bgync1和bgync3等服务器上抽取NC的日志信息。 下图是按时间查询。下图按操作员只查汇总的信息: 下图按自定义条件只查询ERROR级别的信息。日志抽取过程如下:然后,工具à日志数据库 切换到下面的界面。在常用脚本的下拉框中可以通过选择对应选项查看对应的日志信息。如查看“远程调用统计”:选择一行,可以查看其详细信息。DB-监控在数据库监控中可以查看执行比较长的SQL等.消息中心查看消息时,先同步消息,如在消息中心,可以查看系统的消息,如WebContainer:4total number of sql over 1500表示该线程执行的sql个数超过了1500个.双击上图中快照栏中的信息,弹出如下详细信息这是个中间件的快照信息.下图中选中的消息是数据库中有SQL执行时间超过120秒的消息,如:这是个数据库的快照信息.下图是web线程的执行总时间超过了180000ms的快照信息。选中上图中快照栏的记录,双击后弹出详细信息:应用案例二 某项目时常出现有几分钟登录不了NC问题描述: 用户反映,NC在适用的
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 任务书类


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!