diff --git a/test/skywalking-agent-test/redis-test/pom.xml b/test/skywalking-agent-test/redis-test/pom.xml
index 4c8e3b0c538d4986f4fc6b218d45cef37f5ac943..ed022e9d4016ea52fb93efc73f34c1a749a10f99 100644
--- a/test/skywalking-agent-test/redis-test/pom.xml
+++ b/test/skywalking-agent-test/redis-test/pom.xml
@@ -22,7 +22,6 @@
junit
junit
4.12
- test
org.apache.logging.log4j
diff --git a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterOperator.java b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterOperator.java
new file mode 100644
index 0000000000000000000000000000000000000000..c839352ba1d6bd1cd5349b9b888db7197e8ab16b
--- /dev/null
+++ b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterOperator.java
@@ -0,0 +1,57 @@
+package com.ai.cloud.skywalking.agent.test;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import redis.clients.jedis.HostAndPort;
+import redis.clients.jedis.JedisCluster;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.Set;
+
+/**
+ * Created by xin on 16-6-13.
+ */
+public class RedisClusterOperator {
+
+ private static Logger logger = LogManager.getLogger(RedisClusterOperator.class);
+ private static JedisCluster jedisCluster = null;
+
+ static {
+ InputStream inputStream = RedisOperator.class.getResourceAsStream("/redis.conf");
+ Properties properties = new Properties();
+ try {
+ properties.load(inputStream);
+ } catch (IOException e) {
+ logger.error("Failed to load redis.conf", e);
+ System.exit(-1);
+ }
+ jedisCluster = new JedisCluster(getHostAndPorts(properties.getProperty("redis.cluster.host", "127.0.0.1:7000")));
+ }
+
+ private static Set getHostAndPorts(String property) {
+ Set redisEnv = new HashSet();
+ String[] hosts = property.split(";");
+ for (String host : hosts) {
+ String[] hostAndPort = host.split(":");
+ redisEnv.add(new HostAndPort(hostAndPort[0], Integer.parseInt(hostAndPort[1])));
+ }
+ return redisEnv;
+ }
+
+
+ public static void setData(String key, String value) {
+ jedisCluster.set(key, value);
+ }
+
+ public static String getData(String key) {
+ return jedisCluster.get(key);
+ }
+
+ public static void delData(String key) {
+ jedisCluster.del(key);
+ }
+
+}
diff --git a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterPluginTest.java b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterPluginTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..d54f172770b4e193de5f8faeee161866b5ae4c55
--- /dev/null
+++ b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisClusterPluginTest.java
@@ -0,0 +1,39 @@
+package com.ai.cloud.skywalking.agent.test;
+
+import com.ai.skywalking.testframework.api.TraceTreeAssert;
+import org.junit.Test;
+
+public class RedisClusterPluginTest {
+
+ @Test
+ public void testSetData() {
+ RedisClusterOperator.setData("key1", "value1");
+ TraceTreeAssert.assertEquals(new String[][]{
+ // 根据实际情况进行修改
+ {"0.0", "127.0.0.1:7001 set", "key=key1"},
+ {"0", "127.0.0.1:7002;127.0.0.1:7001;127.0.0.1:7000;127.0.0.1:7005;127.0.0.1:7004;127.0.0.1:7003; set", "key=key1"},
+ });
+
+ }
+
+ @Test
+ public void testGetData() {
+ RedisClusterOperator.getData("key1");
+ TraceTreeAssert.assertEquals(new String[][]{
+ // 根据实际情况进行修改
+ {"0.0", "127.0.0.1:7001 get", "key=key1"},
+ {"0", "127.0.0.1:7002;127.0.0.1:7001;127.0.0.1:7000;127.0.0.1:7005;127.0.0.1:7004;127.0.0.1:7003; get", "key=key1"},
+ });
+ }
+
+
+ @Test
+ public void testDelData() {
+ RedisClusterOperator.delData("key1");
+ TraceTreeAssert.assertEquals(new String[][]{
+ // 根据实际情况进行修改
+ {"0.0", "127.0.0.1:7001 del", "key=key1"},
+ {"0", "127.0.0.1:7001;127.0.0.1:7000; del", "key=key1"},
+ });
+ }
+}
diff --git a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisOperator.java b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisOperator.java
index 312ed384f5d7f268121b97ebad66804387a44bbc..63ebfcfdd9ba173d56e7249239138afb236d6c0b 100644
--- a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisOperator.java
+++ b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisOperator.java
@@ -27,7 +27,7 @@ public class RedisOperator {
System.exit(-1);
}
jedisPool = new JedisPool(properties.getProperty("redis.ip", "127.0.0.1"),
- Integer.parseInt(properties.getProperty("redis.port", "2181")));
+ Integer.parseInt(properties.getProperty("redis.port", "6379")));
}
@@ -38,6 +38,7 @@ public class RedisOperator {
jedis.set(key, value);
} catch (Exception e) {
logger.error(e);
+ throw e;
} finally {
if (jedis != null)
jedis.close();
@@ -51,11 +52,25 @@ public class RedisOperator {
return jedis.get(key);
} catch (Exception e) {
logger.error(e);
+ throw e;
} finally {
if (jedis != null)
jedis.close();
}
- return "";
+ }
+
+ public static void delData(String key) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ jedis.del(key);
+ } catch (Exception e) {
+ logger.error(e);
+ throw e;
+ } finally {
+ if (jedis != null)
+ jedis.close();
+ }
}
}
diff --git a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisPluginTest.java b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisPluginTest.java
index e9af1e45daf6798220f6e0dc7cf142d726e98886..67e09077906e8ba312091138bfda38df553dc926 100644
--- a/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisPluginTest.java
+++ b/test/skywalking-agent-test/redis-test/src/main/java/com/ai/cloud/skywalking/agent/test/RedisPluginTest.java
@@ -1,12 +1,33 @@
package com.ai.cloud.skywalking.agent.test;
import com.ai.skywalking.testframework.api.TraceTreeAssert;
+import org.junit.Test;
public class RedisPluginTest {
- public static void main(String[] args) {
+
+ @Test
+ public void testSetData() {
RedisOperator.setData("key1", "value1");
TraceTreeAssert.assertEquals(new String[][]{
{"0", "127.0.0.1:6379 set", "key=key1"},
});
+
+ }
+
+ @Test
+ public void testGetData() {
+ RedisOperator.getData("key1");
+ TraceTreeAssert.assertEquals(new String[][]{
+ {"0", "127.0.0.1:6379 get", "key=key1"},
+ });
+ }
+
+
+ @Test
+ public void testDelData() {
+ RedisOperator.delData("key1");
+ TraceTreeAssert.assertEquals(new String[][]{
+ {"0", "127.0.0.1:6379 del", "key=key1"},
+ });
}
}
diff --git a/test/skywalking-agent-test/redis-test/src/main/resources/redis.conf b/test/skywalking-agent-test/redis-test/src/main/resources/redis.conf
index 19693067f604316bbb47152f4ddfe53808d4c4c2..77f8cb0b7cac8c7700d312b03dec69932c3a9bd4 100644
--- a/test/skywalking-agent-test/redis-test/src/main/resources/redis.conf
+++ b/test/skywalking-agent-test/redis-test/src/main/resources/redis.conf
@@ -1,2 +1,3 @@
redis.ip=127.0.0.1
-redis.port=6379
\ No newline at end of file
+redis.port=6379
+redis.cluster.host=127.0.0.1:7000;127.0.0.1:7001;127.0.0.1:7000;127.0.0.1:7000;127.0.0.1:7000;127.0.0.1:7000;
\ No newline at end of file
diff --git a/test/skywalking-agent-test/redis-test/src/main/resources/sky-walking.auth b/test/skywalking-agent-test/redis-test/src/main/resources/sky-walking.auth
index dd58a4968de2dd10f11f663948e55862d3dc3e6c..ed8cce2ef8d9577fd208b00d1efa5d1c72262288 100644
--- a/test/skywalking-agent-test/redis-test/src/main/resources/sky-walking.auth
+++ b/test/skywalking-agent-test/redis-test/src/main/resources/sky-walking.auth
@@ -4,7 +4,6 @@ buriedpoint.businesskey_max_length=300
sender.retry_get_sender_wait_interval=2000
buffer.pool_size=5
senderchecker.check_polling_time=200
-sender.is_off=false
sender.max_send_length=20000
consumer.max_consumer=0
consumer.max_wait_time=5