看Java StackTrace的各3种方法:

1.  JPS 获取 PID –> jstack <optional>PID.

    -F  to force a thread dump. Use when jstack <pid> does not respond (process is hung)
    -m  to print both java and native frames (mixed mode)
    -l   long listing. Prints additional information about locks

eg.

jstack –l 2134 > "c:\threadlog.tdump", 存成tdump便于使用TDA进行分析. 在visual vm 装个插件打开就可以用了.

 

Untitled

 

 

2. Visual VM

如果profiling remote jvm,需要在jvm configure里面加

-Dcom.sun.management.jmxremote.port=3333     
-Dcom.sun.management.jmxremote.ssl=false 
   -Dcom.sun.management.jmxremote.authenticate=false 

http://docs.oracle.com/javase/6/docs/technotes/guides/visualvm/jmx_connections.html

 

Untitled

3. Btrace, 自带Sample里面的代码 ,这个感觉不太好用.

@BTrace
public class JStack {
    static {
        deadlocks(false);
        jstackAll();
        exit(0);
    }
}

ps : 忘记了,自带的jconsole也可以看. local 还是用visual vm 分析起来比较方便. Production用jstack命令. Trigger 倒是很简单,怎么分析是关键.

转载于:https://www.cnblogs.com/robinw/archive/2012/12/20/2826513.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值