From 28ebac02d5555100148d73bc2310e67bb8f1cf37 Mon Sep 17 00:00:00 2001 From: renliangyu857 <2918490262@qq.com> Date: Fri, 17 Feb 2023 17:30:51 +0800 Subject: [PATCH] bugfix: redis plugin parent span loss --- .../redis/common/RedisActionWrapperHelper.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/common/RedisActionWrapperHelper.java b/sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/common/RedisActionWrapperHelper.java index b0f182aa..e3ea3195 100644 --- a/sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/common/RedisActionWrapperHelper.java +++ b/sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/common/RedisActionWrapperHelper.java @@ -55,26 +55,31 @@ private static String deserialize(byte[] bytes) { } public T doInScope(String command, byte[] key, Supplier supplier) { + redisSofaTracer.clientSend(command); Span span = buildSpan(command, deserialize(key)); return activateAndCloseSpan(span, supplier); } public T doInScope(String command, Supplier supplier) { + redisSofaTracer.clientSend(command); Span span = buildSpan(command); return activateAndCloseSpan(span, supplier); } public void doInScope(String command, byte[] key, Runnable runnable) { + redisSofaTracer.clientSend(command); Span span = buildSpan(command, deserialize(key)); activateAndCloseSpan(span, runnable); } public void doInScope(String command, Runnable runnable) { + redisSofaTracer.clientSend(command); Span span = buildSpan(command); activateAndCloseSpan(span, runnable); } public T doInScope(String command, byte[][] keys, Supplier supplier) { + redisSofaTracer.clientSend(command); Span span = buildSpan(command); span.setTag("keys", toStringWithDeserialization(limitKeys(keys))); return activateAndCloseSpan(span, supplier); @@ -88,6 +93,7 @@ T[] limitKeys(T[] keys) { } public T decorate(Supplier supplier, String operateName) { + redisSofaTracer.clientSend(operateName); Span span = buildSpan(operateName); Throwable candidateThrowable = null; try { @@ -106,6 +112,7 @@ public T decorate(Supplier supplier, String operateName) { } public void decorate(Action action, String operateName) { + redisSofaTracer.clientSend(operateName); Span span = buildSpan(operateName); Throwable candidateThrowable = null; try { @@ -123,8 +130,8 @@ public void decorate(Action action, String operateName) { } } - public void decorateThrowing(ThrowingAction action, String operateName) - throws T { + public void decorateThrowing(ThrowingAction action, String operateName) throws T { + redisSofaTracer.clientSend(operateName); Span span = buildSpan(operateName); Throwable candidateThrowable = null; try { @@ -144,7 +151,7 @@ public void decorateThrowing(ThrowingAction action, Str public V decorateThrowing(ThrowingSupplier supplier, String operateName) throws T { - + redisSofaTracer.clientSend(operateName); Span span = buildSpan(operateName); Throwable candidateThrowable = null; try {