Weblogic常用监控指标

Weblogic常⽤监控指标
JMSRuntime
JMSServersCurrentCount 返回当前JMS服务的连接数
ConnectionsCurrentCount 返回本JMS服务器上当前的连接数
JMSServersHighCount 返回⾃服务器启动后JMS服务的最⼤连接数
ConnectionsHighCount 返回本JMS服务器⾃上次重置后的最⼤连接数
JVMRuntime
HeapSizeCurrent 返回当前JVM堆中内存数,单位时字节
HeapFreeCurrent 返回当前JVM堆中空闲内存数,单位时字节
ExecuteQueueRuntime
ExecuteThreadCurrentIdleCount 返回队列中当前空闲线程数
PendingRequestOldestTime 返回队列中最长的等待时间
PendingRequestCurrentCount 返回队列中等待的请求数
Queue Length 队列长度
不锈钢酸洗JDBCConnectionPoolRuntime
WaitingForConnectionHighCount
返回本JDBCConnectionPoolRuntimeMBean 上最⼤等待连接数幼猪
WaitingForConnectionCurrentCount 返回当前等待连接的总数
MaxCapacity 返回JDBC池的最⼤能⼒
WaitSecondsHighCount 返回等待连接中的最长时间等待者的秒数
ActiveConnectionsCurrentCount 返回当前活动连接总数
ActiveConnectionsHighCount 返回本JDBCConnectionPoolRuntimeMBean 上最⼤活动连接数
烫金膜
注:
weblogic通常监控JVM和执⾏队列,JDBC连接池,其中执⾏队列最关键的指标是Queue Length 队列长度
weblogic⼀般来说监控jvm的使⽤、执⾏线程队列情况、和连接池的变化情况,还有⼀个很重要的检查weblogic的console⽇志这⾥经常能反映⼀些很重要到情况。
监控weblogic的jvm有⼀个很好的⾃带⼯具,由于weblogic使⽤⾃⼰的jrockit作为jvm,⾃带⼀个⼯具通过在启动参数加-Xmanagement,然后进⼊到jrockit的bin路径下命令⾏console启动,可以看到更加细微的jvm的情况,对jvm的调优很好。
这⾥还是建议⼀定对jvm的⼯作原理做⼀个深⼊的理解会对你很有帮助,同时了解不同的jrockit的jvm垃圾回收器各⾃的特点,这些都对weblogic的调优⼤有帮助。
⼩结
BEA WebLogic Server 8.1监视的核⼼在于Java Management Extensions(JMX)规范。简单的理解,WebLogic对每个可以进⾏管理的资源通过⼀个或者多个管理Bean来管理,这就是Mbeans,然后JMX代理直接控制可管理资源,提供了管理对象的注册,并将此对象公开给兼容JMX的应⽤程序。
智能化信报箱
我们主要关注两种Mbeans:配置Mbeans 与运⾏时Mbeans.配置
配置Mbeans ⽤于域针对其资源的配置信息。配置Mbeans被进⼀步分类为:1)管理(Administration):配置Mbeans位于域的管理服务器上。要修改域的配置,需要在管理服务器上修改适当的管理Mbeans。2)本地配置(Local Configuration):管理Mbeans的本地复制,个别服务器⽤于提升性能。本地配置Mbeans是不能修改的。
运⾏时Mbeans 则提供了诸如JVM 内存资源使⽤状况以及WebLogic 服务器状态等资源的。当域中的某⼀资源实例化时(例如Web 应⽤),相应地就会创建⼀个Mbeans 实例来收集该资源的信息。
在WebLogic Server 8.1的监视⽅式中,主要有四种:
通过管理控制台访问监控页⾯时。实质是通过JMX代理对Mbeans执⾏Get操作来获得该资源的当前属性值。
通过命令⾏⼯具来获取监控信息。实质是通过Java命令直接操纵底层Mbeans。
编程实现⾃定义的监视。实质是在程序中调⽤相应的Mbeans来获取信息。
使⽤第三⽅软件监视。
下⾯详细介绍这⼏种监视⽅式。
(1)管理控制台监视
通过管理控制台,可以对WebLogic的性能以及运⾏状况,发布的应⽤,资源等进⾏监视。
下⾯列举部分⽤来管理WebLogic的监视页⾯来简要说明管理控制台所提供的监视功能。
服务器->监视->常规,该页⾯显⽰了服务器的当前状态。⾼级选项⾥还显⽰了WebLogic 版本,JDK的提供商,版本,操作系统的版本等信息。最后从这个页⾯,还可以访问JNDI 树、监视活动队列、监视连接以及监视活动套接⼝。
服务器->监视->常规->监视所有活动队列,执⾏队列的配置对WebLogic 性能是很重要的,根据经验值,⼀颗CPU可以配置25-30之间的执⾏线程。从该页⾯可以查看到已经分配给队列的执⾏线程数,当前空闲的线程数,最长等待请求放⼊队列中的时间,队列中的等待请求数,此队列已处理的请求数等重要信息,这些信息可以作为判断是否需要对执⾏线程调整的参考。遥控直升机制作
服务器->监视->性能,从该页⾯中可以了解WebLogic 服务器性能的基本情况,包括空闲线程数,等待处理的请求数,JVM的内存堆使⽤状态等。
部署->应⽤程序->EAR模块->监视,当应⽤程序部署运⾏后,可以监视单⼀组件,如EJB,Servlet等。如上图所⽰,该页⾯提供了发布的应⽤程序中EJB的统计信息,可以有效了解EJB处理请求的效率。
服务->JDBC->连接缓冲池->监视,在控制台中可以监视资源的运⾏的状态,如JDBC等。该页⾯提供了JDBC连接缓冲池的统计信息,包括连接缓冲池可包含的最⼤数据库连接数,当前使⽤的物理数据库连接数,当前使⽤的物理数据库连接数等信息。
值得⼀提的是在控制台监视页⾯⾥可能会有⼀个⾃定义此视图的选项,使⽤⾃定义视图后可以使⽤⾃定义的视图,可以包含个⼈关注的信息,⽽且可以监视更多的信息。如上图所⽰,该视图是⾃定义后的JDBC连接缓冲池监视页⾯。
控制台上其它的监视页⾯就不⼀⼀列举了,所有的监视页⾯参考:
edocs.bea/wls/docs81/adminguide/monitoring.html#1039671
(2)运⽤命令⾏⼯具监视
命令⾏⼯具可以使⽤特殊命令(GET、 SET、CREATE、INVOKE、 DELETE 和 QUERY)直接操纵底层 JMX 基础结构。这使命令⾏⼯具可以访问管理控制台所有可⽤的功能,甚⾄还为访问某些功能提供了更灵活的⽅法。
具体运⽤过程是使⽤Java命令,调⽤weblogic.Admin这个java类。在运⽤该⼯具时,需要设定环境变量,指定java命令路径及weblogic 包的类路径。使⽤weblogic.Admin⼯具的语法如下:
java weblogic.Admin [ [-url | -adminurl] [protocol://] listen-address:port] -username username [-password password] COMMAND-NAME arguments
在上⾯的命令语法中,username和password表⽰⽤户名和密码,url表⽰运⾏命令的服务器实例的监听地址和监听端⼝,adminurl表⽰管理服务器可以检索域中任何服务器实例的本地配置 MBean 或运⾏时 MBean,COMMAND-NAME表⽰具体执⾏的特殊命令(GET、SET、CREATE、INVOKE、 DELETE 和 QUERY),arguments表⽰命令的参数。实际运⽤的⼀条命令如下:
java weblogic.Admin -username weblogic -password weblogic -url localhost:7001 GET -pretty -type JVMRuntime
需要留意的是最后的命令参数 –type,指定了想获得信息的资源(如果是某个具体的Mbean,使⽤-mbean 参数,-type是所指定类型的实例的所有 MBean 进⾏操作),该参数的获取规则是:在WebLogic Server 8.1 API Reference查 MBean 的接⼝类,并从类名中删除 MBean 后缀。对于为 weblogic.management.runtime.JDBCConnectionPoolRuntimeMBean 的实例的 MBean,使⽤JDBCConnectionPoolRuntime。 对于本地配置 MBean,将 Config 追加到名称中。例如,对于为
傅科摆图片
figuration.JDBCConnectionPoolMBean 接⼝类的实例的本地配置 MBean,使⽤JDBCConnectionPoolConfig。对于对应的管理 MBean 实例,使⽤ JDBCConnectionPool。
具体的命令参考请见:edocs.bea/wls/docs81/admin_ref/cli.html
上⾯的图⽰演⽰了从javadoc中获取type参数,最后获取相应监视信息的过程
(3)编程Mbean⾃定义监视
Mbeans实质上是⼀个java类,那么肯定可以编程使⽤,于是就可以编程实现⾃定义监视。
MBeanHome home = (MBeanHome) new
InitialContext().lookup(MBeanHome.LOCAL_JNDI_NAME);
Set pools = MBeansByType("JDBCConnectionPool");
上⾯的代码⽚段是对于JDBC连接缓冲池的配置mbean的操纵的核⼼部分。得到该mbean实例后可以得到各种weblogic能够提供的关于JDBC连接缓冲池配置信息,实现⾃定义监视。
(4)使⽤第三⽅⼯具监视
BEA WebLogic Server作为⼀种⼴泛运⽤的Java应⽤服务器,有⼤量第三⽅软件可以运⽤,包括HP-Mercury LoadRunner,QUEST Spotlight for WebLogic Server,Wily's Introscope for WebLogic等,详细的使⽤⽅法见其产品⽂档,在此不再累述。

本文发布于:2024-09-23 03:22:28,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/159134.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:监视   信息   管理   服务器   队列   连接
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议