weblogic故障诊断与日常维护总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中间件故障诊断总结

一、步骤:

1、准确描述现象:客户说的和自己查看到的:平台、版本、操作、信息等。特别是,故障前是否有做过什么操作:网络调整、设备调整、主机参数调整、配置文件修改……反正将这一切都列入排查的对象。

2、使用工具收集数据,收集配置文件、日志、dump文件等等。

3、使用分析数据,根据问题或收集的数据,使用适当的工具分析数据,当然包括了在网上和在官方支持站点搜索类似的问题的解决办法。

4、尝试解决问题,根据找到的问题点,尝试解决。如修改错的,复原正确的;运行有问题的,适当调整运行的环境和运行的参数等等。

5、给出最佳解决方案,一般就是继续观察了。

6、总结经验并加以重用,知识积累。

二、通过前台收集基本的信息:

1、重点是故障前做过的操作

2、比对运行平台是否在官方的兼容性列表中,一般就是关注各个版本,特别是一些比较怪异的问题

3、检查环境和参数,如能打开控制台,就在控制台中初步观察,一般进入控制台的格式是http://ip地址:端口/console如:http://192.168.0.89:7001/console/。常用的留意点如下:

A、域运行状态(域-监视-健康状况);一般为running状态,如果不是

running,那这些界面就没有了。

B、服务器运行状态(域-环境-服务器),正常的为running。

C、各个server性能(JVM)状态(域-环境-服务器,点击具体的serve后

进入,监视-健康状况);留意JVM 堆中当前可用的内存量。

不同的JVM,所显示的内容可能不一样,以下为sun的:

D、各个server线程状态(域-环境-服务器,点击具体的serve后进入,监

视-线程);一般来说,空闲线程要多;健康状况为ok

如下图health状态为:Warning,这个是有线程阻塞的。

阻塞线程的内容为:

####<2011-8-13 上午02时42分35秒 GMT+08:00> <[ACTIVE] ExecuteThread: '15' for queue:

'weblogic.kernel.Default (self-tuning)'> <> <> <>

<1313174555613> <[STUCK] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "2,492" seconds working on the request

"weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl@12035ed", which is more than the configured time (StuckThreadMaxTime) of "2,400" seconds. Stack trace:

.SocketOutputStream.socketWrite0(Native Method) .SocketOutputStream.socketWrite(SocketOutputStream.java:97)

.SocketOutputStream.write(SocketOutputStream.java:141)

.ns.DataPacket.send(Unknown Source)

E、JDBC(域-环境-服务器,点击具体的serve后进入,监视-JDBC);活动

连接数合理。

F、程序EJB/Web Module(域-部署);状态为活动,健康状况为ok。

其目标关联正确

G、JMS(域-服务-消息传送-JMS服务器);健康状态为ok。

4、在控制台生成dump;生成Dump Thread Stacks内容;查找queryList等关

键字符,即可快速定位问题代码。

5、如果控制台打不开或无法进入,就要先看进程有没有在跑,如果进程有,但控制台或程序无法进入,一般就是有故障了,此时,可以通过相关日志进行后台分析分析。

三、后台日志分析:

一般来说,新建立的环境,配置的问题多一点;已经运行的生成系统错误或bug 的可能性大点。当出现故障时,就可以调取系统日志、中间件的日志,根据相关关键字(BEA-)网上搜索,或到官方网站对相关问题的描述进行查找。WebLogic在启动及运行过程中会记录各种LOG信息,以帮助系统治理员对整个应用系统进行治理及维护。

1、log默认位置

..\user_projects\domains\your_domain\servers\AdminServer\logs下面的AdminServer.log;access.log;domain_name.log

新版的如:

C:\Oracle\Middleware\user_projects\domains\base_domain\servers\Adm inServer\logs

如果是重定向输出的,就看重定向输出的文件。

2、日志文件说明

WebLogic SERVER运行日志

假如WebLogic SERVER在启动或运行过程中有错误发生,错误信息会显示在屏幕上,并且会记录在一个LOG文件中,该文件默认名为AdminServer.log。该文件也记录WebLogic的启动及关闭等其他运行信息。可在Gernal属性页中设置该文件的路径及名字,错误的输出的等级等。

HTTP访问日志

在WebLogic中可以对用HTTP,HTTPS协议访问的服务器上的文件都做记录,该LOG文件默认的名字为Access.log,内容如下,该文件具体记录在某个时间,某个IP地址的客户端访问了服务器上的那个文件。

127.0.0.1 - - [25/Feb/2002:11:35:58 +0800] "GET /weather HTTP/1.1" 302 0

127.0.0.1 - - [25/Feb/2002:11:35:58 +0800] "GET /weather/index.Html HTTP/1.1" 200 176

HTTP访问日志的属性可在HTTP属性页中进行设置。

DOMAIN运行日志

记录一个DOMIAN的运行情况,一个DOMAIN中的各个WebLogic SERVER可以把它们的一些运行信息(比如:很严重的错误)发送给一个DOMAIN的ADMINISTRATOR SERVER上,ADMINISTRATOR SERVER把这些信息些到DOMAIN 日志中。默认名为:domain_name.log 。一般就看这个最多。

3、通过控制台查看或修改系统日志路径

登录weblogic后台

相关文档
最新文档