From ec30b5f53db297b26da4e8df89dec3c9d428ef53 Mon Sep 17 00:00:00 2001 From: ForrestWang123 <157256498+ForrestWang123@users.noreply.github.com> Date: Thu, 18 Apr 2024 21:19:50 +0800 Subject: [PATCH] Fix NPE in handleMethodException method of apm-jdk-threadpool-plugin. (#681) Co-authored-by: forrestwang --- CHANGES.md | 1 + .../apm/plugin/AbstractThreadingPoolInterceptor.java | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 275c823e9..dfe870b61 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -6,6 +6,7 @@ Release Notes. ------------------ * Remove `idleCount` tag in Alibaba Druid meter plugin. +* Fix NPE in handleMethodException method of apm-jdk-threadpool-plugin. All issues and pull requests are [here](https://github.com/apache/skywalking/milestone/213?closed=1) diff --git a/apm-sniffer/bootstrap-plugins/jdk-threadpool-plugin/src/main/java/org/apache/skywalking/apm/plugin/AbstractThreadingPoolInterceptor.java b/apm-sniffer/bootstrap-plugins/jdk-threadpool-plugin/src/main/java/org/apache/skywalking/apm/plugin/AbstractThreadingPoolInterceptor.java index 723945307..c72c1424b 100644 --- a/apm-sniffer/bootstrap-plugins/jdk-threadpool-plugin/src/main/java/org/apache/skywalking/apm/plugin/AbstractThreadingPoolInterceptor.java +++ b/apm-sniffer/bootstrap-plugins/jdk-threadpool-plugin/src/main/java/org/apache/skywalking/apm/plugin/AbstractThreadingPoolInterceptor.java @@ -63,6 +63,10 @@ public abstract class AbstractThreadingPoolInterceptor implements InstanceMethod @Override public void handleMethodException(EnhancedInstance objInst, Method method, Object[] allArguments, Class[] argumentsTypes, Throwable t) { + if (!ContextManager.isActive()) { + return; + } + ContextManager.activeSpan().log(t); } }