From dda3411c260f4676f624d1543f6116d9c66b2c01 Mon Sep 17 00:00:00 2001 From: ascrutae Date: Wed, 8 Jun 2016 23:00:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9Jedis=E6=8B=A6=E6=88=AA?= =?UTF-8?q?=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v2/plugin/define/JedisPluginDefine.java | 38 +++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/skywalking-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/jedis/v2/plugin/define/JedisPluginDefine.java b/skywalking-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/jedis/v2/plugin/define/JedisPluginDefine.java index 1b9551972..a29368a12 100644 --- a/skywalking-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/jedis/v2/plugin/define/JedisPluginDefine.java +++ b/skywalking-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/jedis/v2/plugin/define/JedisPluginDefine.java @@ -1,27 +1,35 @@ package org.skywalking.jedis.v2.plugin.define; -import org.skywalking.jedis.v2.plugin.JedisInterceptor; - import com.ai.cloud.skywalking.plugin.interceptor.IAroundInterceptor; import com.ai.cloud.skywalking.plugin.interceptor.InterceptorDefine; import com.ai.cloud.skywalking.plugin.interceptor.MethodMatcher; -import com.ai.cloud.skywalking.plugin.interceptor.matcher.AnyMethodMatcher; +import com.ai.cloud.skywalking.plugin.interceptor.matcher.MethodsExclusiveMatcher; +import com.ai.cloud.skywalking.plugin.interceptor.matcher.PrivateMethodMatcher; +import com.ai.cloud.skywalking.plugin.interceptor.matcher.SimpleMethodMatcher; +import org.skywalking.jedis.v2.plugin.JedisInterceptor; public class JedisPluginDefine implements InterceptorDefine { - @Override - public String getBeInterceptedClassName() { - return "redis.clients.jedis.Jedis"; - } + @Override + public String getBeInterceptedClassName() { + return "redis.clients.jedis.Jedis"; + } - @Override - public MethodMatcher[] getBeInterceptedMethodsMatchers() { - return new MethodMatcher[] { new AnyMethodMatcher() }; - } + @Override + public MethodMatcher[] getBeInterceptedMethodsMatchers() { + return new MethodMatcher[]{ + new MethodsExclusiveMatcher( + new PrivateMethodMatcher(), + new SimpleMethodMatcher("close"), + new SimpleMethodMatcher("getDB"), + new SimpleMethodMatcher("connect") + ) + }; + } - @Override - public IAroundInterceptor instance() { - return new JedisInterceptor(); - } + @Override + public IAroundInterceptor instance() { + return new JedisInterceptor(); + } }