diff --git a/core/src/main/java/com/taobao/arthas/core/advisor/AdviceWeaver.java b/core/src/main/java/com/taobao/arthas/core/advisor/AdviceWeaver.java index b918f3dca2..4cc53285c1 100644 --- a/core/src/main/java/com/taobao/arthas/core/advisor/AdviceWeaver.java +++ b/core/src/main/java/com/taobao/arthas/core/advisor/AdviceWeaver.java @@ -51,7 +51,10 @@ public static void unReg(AdviceListener listener) { } } - public static AdviceListener listener(long id) { + public static AdviceListener listener(final long id) { + if (id == -1 && advices.size() > 0) { + return advices.entrySet().iterator().next().getValue(); + } return advices.get(id); } diff --git a/core/src/main/java/com/taobao/arthas/core/command/monitor200/EnhancerCommand.java b/core/src/main/java/com/taobao/arthas/core/command/monitor200/EnhancerCommand.java index 48615a19f5..912bead3e7 100644 --- a/core/src/main/java/com/taobao/arthas/core/command/monitor200/EnhancerCommand.java +++ b/core/src/main/java/com/taobao/arthas/core/command/monitor200/EnhancerCommand.java @@ -104,6 +104,9 @@ AdviceListener getAdviceListenerWithId(CommandProcess process) { if (listenerId != 0) { AdviceListener listener = AdviceWeaver.listener(listenerId); if (listener != null) { + if (listenerId == -1) { + process.echoTips("found listenerId: " + listener.id() + "\n"); + } return listener; } }