arthas 抓不到懒加载吗?

问题描述

今天使用 arthas 监控线上问题时,遇到一种情况,无论如何也无法监控到该方法。报错如下:

[arthas@66764]$ watch xxxx.getSql '{params,returnObj,throwExp}'  -n 5  -x 3
il getSql '{params,returnObj,throwExp}'  -n 5  -x 3n.util.SqlUt
Affect(class count: 0 , method count: 0) cost in 21 ms, listenerId: 19
No class or method is affected, try:
1. Execute `sm CLASS_NAME METHOD_NAME` to make sure the method you are tracing actually exists (it might be in your parent class).
2. Execute `options unsafe true`, if you want to enhance the classes under the `java.*` package.
3. Execute `reset CLASS_NAME` and try again, your method body might be too large.
4. Match the constructor, use `<init>`, for example: `watch demo.MathGame <init>`
5. Check arthas log: C:\Users\Administrator\logs\arthas\arthas.log
6. Visit https://github.com/alibaba/arthas/issues/47 for more details.

明显是找不到该方法。

但是我调用了一次该方法,然后再次执行,就能抓到了

于是我怀疑是否是懒加载导致的该问题,这个类没被调用,没被载入。导致无法监控到。

先把问题记录于此,抽空验证下,或者有大神在评论区帮我解释下,不胜感激。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用 Arthas 动态替换 XML 文件内容。下面是详细步骤: 1. 首先,确保已经安装了 Arthas。你可以从官方网站下最新的 Arthas 版本。 2. 打开终端或命令提示符,运行以下命令启动 Arthas: ``` $ java -jar arthas-boot.jar ``` 3. 在 Arthas 命令行中,使用 `dashboard` 命令查看当前应用程序的运行情况: ``` $ dashboard ``` 4. 使用 `jvm` 命令选择需要调试的 Java 进程,输入进程 ID 或关键词进行搜索并选择进程。 5. 使用 `ognl` 命令找到需要替换的 XML 文件。比如,如果你想替换的文件是 `config.xml`,你可以使用以下命令找到这个文件: ``` $ ognl -x 2 config.xml ``` 这将会在控制台中显示匹配的文件路径。 6. 使用 `cat` 命令查看文件内容,确认你要替换的内容是否正确: ``` $ cat <文件路径> ``` 7. 使用 `vi` 命令进入编辑模式,并且使用 `set` 命令设置需要替换的内容,比如将 `<tag>old_value</tag>` 替换为 `<tag>new_value</tag>`: ``` $ vi <文件路径> :set /<tag>old_value<\/tag>/<tag>new_value<\/tag>/ ``` 8. 使用 `cat` 命令再次查看文件内容,确认替换是否成功: ``` $ cat <文件路径> ``` 9. 退出 Arthas 命令行,使用 `quit` 命令或按下 Ctrl + C。 以上就是使用 Arthas 动态替换 XML 文件内容的详细步骤。请注意,使用 Arthas 进行动态替换可能会对应用程序造成影响,请谨慎操作并确保备份重要文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值