You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2021/03/01 13:26:15 UTC
[shardingsphere] branch master updated: fix collector sql (#9556)
This is an automated email from the ASF dual-hosted git repository.
zhangyonglun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new ae008ca fix collector sql (#9556)
ae008ca is described below
commit ae008ca649e9e1172d1d7a6ae46a0fda79955380
Author: xiaoyu <54...@qq.com>
AuthorDate: Mon Mar 1 21:25:53 2021 +0800
fix collector sql (#9556)
---
.../jaeger/advice/JDBCExecutorCallbackAdvice.java | 29 +++++++++---------
.../zipkin/advice/JDBCExecutorCallbackAdvice.java | 35 +++++++++++-----------
2 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
index 5f3f52f..ff1c5ca 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
@@ -49,22 +49,21 @@ public final class JDBCExecutorCallbackAdvice implements InstanceMethodAroundAdv
public void beforeMethod(final AdviceTargetObject target, final Method method, final Object[] args, final MethodInvocationResult result) {
Span root = (Span) ((Map<String, Object>) args[2]).get(JaegerConstants.ROOT_SPAN);
Tracer.SpanBuilder builder = GlobalTracer.get().buildSpan(OPERATION_NAME);
- if ((boolean) args[1]) {
- builder.asChildOf(root);
- } else {
- JDBCExecutionUnit executionUnit = (JDBCExecutionUnit) args[0];
- Method getMetadataMethod = JDBCExecutorCallback.class.getDeclaredMethod("getDataSourceMetaData", DatabaseMetaData.class);
- getMetadataMethod.setAccessible(true);
- DataSourceMetaData metaData = (DataSourceMetaData) getMetadataMethod.invoke(target, new Object[]{executionUnit.getStorageResource().getConnection().getMetaData()});
- builder.withTag(Tags.COMPONENT.getKey(), JaegerConstants.COMPONENT_NAME)
- .withTag(Tags.DB_TYPE.getKey(), JaegerConstants.DB_TYPE_VALUE)
- .withTag(Tags.DB_INSTANCE.getKey(), executionUnit.getExecutionUnit().getDataSourceName())
- .withTag(Tags.PEER_HOSTNAME.getKey(), metaData.getHostName())
- .withTag(Tags.PEER_PORT.getKey(), metaData.getPort())
- .withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT)
- .withTag(Tags.DB_STATEMENT.getKey(), executionUnit.getExecutionUnit().getSqlUnit().getSql())
- .withTag(JaegerConstants.ShardingSphereTags.DB_BIND_VARIABLES.getKey(), executionUnit.getExecutionUnit().getSqlUnit().getParameters().toString());
+ if (null != root) {
+ builder = builder.asChildOf(root);
}
+ JDBCExecutionUnit executionUnit = (JDBCExecutionUnit) args[0];
+ Method getMetadataMethod = JDBCExecutorCallback.class.getDeclaredMethod("getDataSourceMetaData", DatabaseMetaData.class);
+ getMetadataMethod.setAccessible(true);
+ DataSourceMetaData metaData = (DataSourceMetaData) getMetadataMethod.invoke(target, new Object[]{executionUnit.getStorageResource().getConnection().getMetaData()});
+ builder.withTag(Tags.COMPONENT.getKey(), JaegerConstants.COMPONENT_NAME)
+ .withTag(Tags.DB_TYPE.getKey(), JaegerConstants.DB_TYPE_VALUE)
+ .withTag(Tags.DB_INSTANCE.getKey(), executionUnit.getExecutionUnit().getDataSourceName())
+ .withTag(Tags.PEER_HOSTNAME.getKey(), metaData.getHostName())
+ .withTag(Tags.PEER_PORT.getKey(), metaData.getPort())
+ .withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_CLIENT)
+ .withTag(Tags.DB_STATEMENT.getKey(), executionUnit.getExecutionUnit().getSqlUnit().getSql())
+ .withTag(JaegerConstants.ShardingSphereTags.DB_BIND_VARIABLES.getKey(), executionUnit.getExecutionUnit().getSqlUnit().getParameters().toString());
target.setAttachment(builder.startActive(true));
}
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
index c70780b..2364be1 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
@@ -43,25 +43,26 @@ public final class JDBCExecutorCallbackAdvice implements InstanceMethodAroundAdv
@SneakyThrows
@SuppressWarnings("unchecked")
public void beforeMethod(final AdviceTargetObject target, final Method method, final Object[] args, final MethodInvocationResult result) {
- final Span root = (Span) ((Map<String, Object>) args[2]).get(ZipkinConstants.ROOT_SPAN);
- if ((boolean) args[1]) {
- target.setAttachment(Tracing.currentTracer().newChild(root.context()).name(OPERATION_NAME).start());
+ Span root = (Span) ((Map<String, Object>) args[2]).get(ZipkinConstants.ROOT_SPAN);
+ Span span;
+ if (null == root) {
+ span = Tracing.currentTracer().nextSpan().name(OPERATION_NAME);
} else {
- JDBCExecutionUnit executionUnit = (JDBCExecutionUnit) args[0];
- Method getMetadataMethod = JDBCExecutorCallback.class.getDeclaredMethod("getDataSourceMetaData", DatabaseMetaData.class);
- getMetadataMethod.setAccessible(true);
- DataSourceMetaData metaData = (DataSourceMetaData) getMetadataMethod.invoke(target, new Object[]{executionUnit.getStorageResource().getConnection().getMetaData()});
- Span span = Tracing.currentTracer().nextSpan().name(OPERATION_NAME);
- span.tag(ZipkinConstants.Tags.COMPONENT, ZipkinConstants.COMPONENT_NAME);
- span.tag(ZipkinConstants.Tags.DB_TYPE, ZipkinConstants.DB_TYPE_VALUE);
- span.tag(ZipkinConstants.Tags.DB_INSTANCE, executionUnit.getExecutionUnit().getDataSourceName());
- span.tag(ZipkinConstants.Tags.PEER_HOSTNAME, metaData.getHostName());
- span.tag(ZipkinConstants.Tags.PEER_PORT, String.valueOf(metaData.getPort()));
- span.tag(ZipkinConstants.Tags.DB_STATEMENT, executionUnit.getExecutionUnit().getSqlUnit().getSql());
- span.tag(ZipkinConstants.Tags.DB_BIND_VARIABLES, executionUnit.getExecutionUnit().getSqlUnit().getParameters().toString());
- span.start();
- target.setAttachment(span);
+ span = Tracing.currentTracer().newChild(root.context()).name(OPERATION_NAME);
}
+ span.tag(ZipkinConstants.Tags.COMPONENT, ZipkinConstants.COMPONENT_NAME);
+ span.tag(ZipkinConstants.Tags.DB_TYPE, ZipkinConstants.DB_TYPE_VALUE);
+ JDBCExecutionUnit executionUnit = (JDBCExecutionUnit) args[0];
+ Method getMetadataMethod = JDBCExecutorCallback.class.getDeclaredMethod("getDataSourceMetaData", DatabaseMetaData.class);
+ getMetadataMethod.setAccessible(true);
+ DataSourceMetaData metaData = (DataSourceMetaData) getMetadataMethod.invoke(target, new Object[]{executionUnit.getStorageResource().getConnection().getMetaData()});
+ span.tag(ZipkinConstants.Tags.DB_INSTANCE, executionUnit.getExecutionUnit().getDataSourceName());
+ span.tag(ZipkinConstants.Tags.PEER_HOSTNAME, metaData.getHostName());
+ span.tag(ZipkinConstants.Tags.PEER_PORT, String.valueOf(metaData.getPort()));
+ span.tag(ZipkinConstants.Tags.DB_STATEMENT, executionUnit.getExecutionUnit().getSqlUnit().getSql());
+ span.tag(ZipkinConstants.Tags.DB_BIND_VARIABLES, executionUnit.getExecutionUnit().getSqlUnit().getParameters().toString());
+ span.start();
+ target.setAttachment(span);
}
@Override