arthas 用 watch 观测 SimpleDateFormat ,观测不到

烛✟孩 发布于 03/10 16:34
阅读 96
收藏 0
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

 

sdf.format(new Date());

 

watch java.text.DateFormat format '{params,returnObj,throwExp}'  -n 5  -x 3 

arthas,观测不到,求解

加载中
0
小激动Caim
小激动Caim

在Arthas中,使用watch命令可以观测Java方法或对象的执行情况,但是无法直接观测Java对象的属性或状态。因此,在观测SimpleDateFormat对象时,需要观测其format方法的执行情况,而无法直接观测其pattern属性的值。 以下是一个使用watch命令观测SimpleDateFormat.format方法的例子:

$ watch -x 2 'new java.text.SimpleDateFormat("yyyy-MM-dd").format(new java.util.Date())'

这里使用了-x选项,表示输出结果时将执行结果展开。同时,使用了一个匿名的SimpleDateFormat对象调用了format方法,并传入了当前的日期对象new java.util.Date()。 如果需要观测多个SimpleDateFormat对象的format方法,可以将观测逻辑封装成一个方法,例如:

public static String formatDateString(Date date) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    return sdf.format(date);
}

然后,在Arthas中使用watch命令观测该方法的执行情况,即可观测多个SimpleDateFormat对象的format方法,例如:

$ watch -x 2 "com.example.Test.formatDateString(new java.util.Date())"

这里使用了com.example.Test类中的formatDateString方法来观测SimpleDateFormat对象的format方法。

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部