[原创]对于Weblogic Console监控的学习
一、可以通过管理控制台对Weblogic的性能以及运行状况,发布和应用,资源等进行监视。
环境—>服务器—>监视—>一般信息,该页面显示了服务器的一般运行信息,如weblogic的版本,java的提供商、版本,操作系统的版本信息等。
在线程选项卡中可以看到当前服务器的线程活动信息。第一张表提供了有关线程池状态的一般信息,第二张表提供了有关单个线程的信息。
其中空闲线程数是不能为0的,否则意味着系统无线程可用,有死机的危险。
环境—>服务器—>监视—>性能,从该页面可以了解weblogic服务器性能的基本情况,包括空闲线程,等待处理的请求数,JVM的内存堆使用状态等。
部署—>应用程序—>监视,当应用程序部署运行后,可以监视单一组件,如EJB,Servlet等。如下图可以了解EJB的运行信息:
类似上面所述控制台还有其它的监视页面就不一一列举了。
查看有关资料上说weblogic9系列及更高版本的监控weblogic的专家团队们采用了更加集成好的图形界面方式,所以按照相关配置方式进行实验:
1. 找到%WL_HOME%\server\lib\console-ext下的diagnostics-console-extension.jar,将该文件拷贝到需要监控的domain的console-ext下面;
2. 重新启动weblogic服务,进入控制台上面会多一个WDLF Console Extension选项卡这个界面就是实现weblogic监控的一个非常全的图形化界面;
3. ��窗口的左面是功能面板,右面是数据的图形显示界面,你可以在左面自定义监视的项目,右面通过修改改变图形的显示位置和一些属性等等,总之感觉上,在这一块比8系列有很大的增强;
根据上面的步骤控制台上面确实有一个WDLF Console Extension选项卡,可是进去之后没有图形界面,不知道是为什么
二、Weblogic server的监视方式除了控制台监视还有运用命令行工具监视,编程Mbean自定义监视和使用第三方工具监视。
(1)运用命令行工具监视
命令行工具可以使用特殊命令(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
(2)编程Mbean自定义监视
Mbeans实质上是一个java类,那么肯定可以编程使用,于是就可以编程实现自定义监视。
MBeanHome home = (MBeanHome) new
InitialContext().lookup(MBeanHome.LOCAL_JNDI_NAME);
Set pools = home.getMBeansByType("JDBCConnectionPool");
上面的代码片段是对于JDBC连接缓冲池的配置mbean的操纵的核心部分。得到该mbean实例后可以得到各种weblogic能够提供的关于JDBC连接缓冲池配置信息,实现自定义监视。
这种方式不太明白,还需要进一步学习一下
(3)使用第三方工具监视
BEA WebLogic Server作为一种广泛运用的Java应用服务器,有大量第三方软件可以运用,包括HP-Mercury LoadRunner,QUEST Spotlight for WebLogic Server,Wily's Introscope for WebLogic等。