[原创]WebLogic诊断篇之WLS故障环境保留_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2903 | 回复: 1   主题: [原创]WebLogic诊断篇之WLS故障环境保留        下一篇 
panpan.nie
注册用户
等级:大校
经验:4754
发帖:217
精华:2
注册:1970-1-1
状态:离线
发送短消息息给panpan.nie 加好友    发送短消息息给panpan.nie 发消息
发表于: IP:您无权察看 2015-7-15 16:18:06 | [全部帖] [楼主帖] 楼主

发生weblogic故障时,需维护好现场,并收集以下相关信息:

一、WLS服务器网络情况:收集pingtelnetnetstat等信息

1)位于一个Domain中的各个服务器是否能够联通

ping命令检查网络是否可达

telnet测试映射端口或远程访问主机

2Weblogic 服务器与数据库服务器的链接是否畅通

3)集群环境的多播通信是否正常

netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics)masquerade 连接,多播成员 (Multicast Memberships) 等等。

netstat -a列出所有端口 

netstat -l只显示监听端口

netstat -r显示核心路由信息 

二、WLS硬件服务器资源使用情况:收集top/topasdfdu等信息

检查系统CPU、内存和I/O 等使用是否异常。如果负载不大的情况下,CPU是否一直居高不下,内存占用和I/O是否一直很大。

北京联动北方科技有限公司

三、WLS server日志文件:收集accessserverdomain日志信息

1、server_name.log

该日志记录的是服务(包括Admin Server Managed Server)启动过程中和关闭过程中的日志,还包括部署在服务上面的应用运行过程中产生的日志。

路径为 DOMAIN_NAME/servers/SERVER_NAME/logs/server_name.log

2、access.log

  该文件具体记录在某个时间、某个IP地址的客户端访问服务器上的那个文件。

  路径为DOMAIN_NAME/servers/SERVER_NAME/logs/access,log

3、domain_name.log

记录一个Domain的运行情况。被管服务器把运行信息发给管理服务器,管理服务器将其写入Domain日志中。

  路径为DOMAIN_NAME/servers/ADMIN_SERVER_NAME/logs/domain_name.log

备注:DOMAIN_NAME 是在其中定位域的目录的名称,ADMIN_SERVER_NAME是管理服务器的名称,SERVER_NAME是被管服务器的名称

四、WLS gc文件:该时间段verbosegc.(添加-verbosegc参数)

GC.log记录服务的内存垃圾回收情况。该日志默认情况下并不生成。如果需要生成该日志,需要在启动服务的脚本中指定垃圾回收日志文件的路径和名称,也可以在域目录下的setDomainEnv.sh 或者 wls_home下的commEnv.sh中指定

北京联动北方科技有限公司

例:WebLogic打开GC日志的方法:在setDomainEnv.cmd 中设置

set JAVA_OPTIONS=%JAVA_OPTIONS% -verbose:gc -Xloggc:log\gc.log -XX:+PrintGC

五、WLS server线程快照:.该时间点的threddump文件(kill -3操作)

Thread dump 是把Java进程中所有线程的运行状况输出到指定文件中。Thread Dump 生成结果中包括各个线程的运行状态、标识和调用的堆栈;调用的堆栈包括完整的类名、所执行的方法,如果可能的话还有源代码的行数。

在 unix, linux和 MacOS 环境中,

在控制台中敲: Ctrl-\,或者,用 “kill -3 <pid>” ,或者 “kill – QUIT <pid>”。 Pid是用所关注的 JAVA进程号,您可以用 “ps -ef   grep java” 找到,或者使用 JDK 5.0中的 “jps -v” 命令获得。kill -3 <pid> 该命令会直接将线程快照显示在控制台上,注意一定要谨慎一步不慎就可能让服务器进程被杀死!

在各个操作系统平台,都可以用 JDK 自带命令行工具包中的 jstack <pid> 。 (进入到jdk安装目录bin下,使用 ./jstack <pid> > dump.txt 可以线程快照重定向到文件中)

六、Heap dump的获取

Java Heap是所有类实例和数组对象分配的一个运行时数据区。当JVM中对象过多,Java堆内存耗尽时,就可能会触发产生Heap dump文件。

北京联动北方科技有限公司




赞(0)    操作        顶端 
arcona
注册用户
等级:少校
经验:1100
发帖:10
精华:0
注册:2015-6-1
状态:离线
发送短消息息给arcona 加好友    发送短消息息给arcona 发消息
发表于: IP:您无权察看 2016-3-28 8:03:41 | [全部帖] [楼主帖] 2  楼

楼主大法好,感谢楼主无私奉献~



赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论