diff --git a/skywalking-sniffer/skywalking-agent/pom.xml b/skywalking-sniffer/skywalking-agent/pom.xml index 69a6b93c8..c32b311f0 100644 --- a/skywalking-sniffer/skywalking-agent/pom.xml +++ b/skywalking-sniffer/skywalking-agent/pom.xml @@ -26,8 +26,14 @@ ${shade.package}.${shade.akka.source} scala ${shade.package}.${shade.scala.source} - org - ${shade.package}.${shade.all.org.source} + org.agrona + ${shade.package}.${shade.org.agrona.source} + org.jboss.netty + ${shade.package}.${shade.org.jboss.netty.source} + org.reactivestreams + ${shade.package}.${shade.org.reactivestreams.source} + org.uncommons.maths + ${shade.package}.${shade.org.uncommons.maths.source} com.google ${shade.package}.${shade.com.google.source} io.aeron @@ -147,8 +153,20 @@ ${shade.com.google.target} - ${shade.all.org.source} - ${shade.all.org.target} + ${shade.org.agrona.source} + ${shade.org.agrona.target} + + + ${shade.org.jboss.netty.source} + ${shade.org.jboss.netty.target} + + + ${shade.org.reactivestreams.source} + ${shade.org.reactivestreams.target} + + + ${shade.org.uncommons.maths.source} + ${shade.org.uncommons.maths.target} ${shade.scala.source} diff --git a/skywalking-sniffer/skywalking-sdk-plugin/dubbo-plugin/src/main/java/com/a/eye/skywalking/plugin/dubbo/DubboInterceptor.java b/skywalking-sniffer/skywalking-sdk-plugin/dubbo-plugin/src/main/java/com/a/eye/skywalking/plugin/dubbo/DubboInterceptor.java index 6c8e1570d..604012482 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/dubbo-plugin/src/main/java/com/a/eye/skywalking/plugin/dubbo/DubboInterceptor.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/dubbo-plugin/src/main/java/com/a/eye/skywalking/plugin/dubbo/DubboInterceptor.java @@ -55,10 +55,10 @@ public class DubboInterceptor implements InstanceMethodsAroundInterceptor { Tags.URL.set(span, generateRequestURL(requestURL, invocation)); Tags.COMPONENT.set(span, DUBBO_COMPONENT); Tags.SPAN_LAYER.asRPCFramework(span); + Tags.PEER_HOST.set(span, requestURL.getHost()); + Tags.PEER_PORT.set(span, requestURL.getPort()); if (isConsumer) { - Tags.PEER_HOST.set(span, requestURL.getHost()); - Tags.PEER_PORT.set(span, requestURL.getPort()); Tags.SPAN_KIND.set(span, Tags.SPAN_KIND_CLIENT); ContextCarrier contextCarrier = new ContextCarrier(); ContextManager.inject(contextCarrier); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/CallableStatementTracing.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/CallableStatementTracing.java index 1c1463577..797908dcd 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/CallableStatementTracing.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/CallableStatementTracing.java @@ -22,7 +22,7 @@ public class CallableStatementTracing { ConnectionInfo connectInfo, String method, String sql, Executable exec) throws SQLException { try { - Span span = ContextManager.createSpan("JDBC/CallableStatement/" + method); + Span span = ContextManager.createSpan(connectInfo.getDBType() + "/JDBI/CallableStatement/" + method); Tags.DB_TYPE.set(span, "sql"); Tags.DB_INSTANCE.set(span, connectInfo.getDatabaseName()); Tags.DB_STATEMENT.set(span, sql); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/ConnectionTracing.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/ConnectionTracing.java index 6bfb1706a..1b20172ac 100755 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/ConnectionTracing.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/ConnectionTracing.java @@ -22,7 +22,7 @@ public class ConnectionTracing { ConnectionInfo connectInfo, String method, String sql, Executable exec) throws SQLException { try { - Span span = ContextManager.createSpan("JDBC/Connection/" + method); + Span span = ContextManager.createSpan(connectInfo.getDBType() + "/JDBI/Connection/" + method); Tags.DB_TYPE.set(span, "sql"); Tags.DB_INSTANCE.set(span, connectInfo.getDatabaseName()); Tags.DB_STATEMENT.set(span, sql); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/PreparedStatementTracing.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/PreparedStatementTracing.java index 09ca3c5e3..20f7fba3b 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/PreparedStatementTracing.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/PreparedStatementTracing.java @@ -21,7 +21,7 @@ public class PreparedStatementTracing { ConnectionInfo connectInfo, String method, String sql, Executable exec) throws SQLException { try { - Span span = ContextManager.createSpan("JDBC/PreparedStatement/" + method); + Span span = ContextManager.createSpan(connectInfo.getDBType() + "/JDBI/PreparedStatement/" + method); Tags.DB_TYPE.set(span, "sql"); Tags.DB_INSTANCE.set(span, connectInfo.getDatabaseName()); Tags.DB_STATEMENT.set(span, sql); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/StatementTracing.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/StatementTracing.java index 8d4776521..f421e0ad0 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/StatementTracing.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/main/java/com/a/eye/skywalking/plugin/jdbc/StatementTracing.java @@ -21,7 +21,7 @@ public class StatementTracing { ConnectionInfo connectInfo, String method, String sql, Executable exec) throws SQLException { try { - Span span = ContextManager.createSpan("JDBC/Statement/" + method); + Span span = ContextManager.createSpan(connectInfo.getDBType() + "/JDBI/Statement/" + method); Tags.DB_TYPE.set(span, "sql"); Tags.DB_INSTANCE.set(span, connectInfo.getDatabaseName()); Tags.DB_STATEMENT.set(span, sql); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWCallableStatementTest.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWCallableStatementTest.java index f3fefe2c3..839fb90ec 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWCallableStatementTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWCallableStatementTest.java @@ -465,7 +465,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeQuery", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeQuery", "SELECT * FROM test"); } }); } @@ -486,7 +486,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeQuery", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeQuery", "SELECT * FROM test"); } }); } @@ -505,7 +505,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -523,7 +523,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -541,7 +541,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -562,7 +562,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/execute", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/execute", "UPDATE test SET a = 1"); } }); } @@ -583,7 +583,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeUpdate", "UPDATE test SET a = ?"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeUpdate", "UPDATE test SET a = ?"); } }); } @@ -604,7 +604,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -624,7 +624,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -644,7 +644,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -664,7 +664,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -689,7 +689,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeBatch", ""); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeBatch", ""); } }); } @@ -738,7 +738,7 @@ public class SWCallableStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/CallableStatement/executeQuery", "SELECT * FROM test WHERE a = ? or b = ? or c=? or d = ? or e=?"); + assertDBSpan(span, "Mysql/JDBI/CallableStatement/executeQuery", "SELECT * FROM test WHERE a = ? or b = ? or c=? or d = ? or e=?"); assertThat(span.getLogs().size(), is(1)); assertDBSpanLog(span.getLogs().get(0)); } diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWConnectionTest.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWConnectionTest.java index b0f131dbf..b97d7109e 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWConnectionTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWConnectionTest.java @@ -68,7 +68,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/commit"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/commit"); } }); } @@ -83,7 +83,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/commit"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/commit"); } }); } @@ -100,7 +100,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/commit"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/commit"); assertDBSpanLog(traceSegment.getSpans().get(0).getLogs().get(0)); } }); @@ -117,7 +117,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback"); } }); @@ -133,7 +133,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback"); } }); } @@ -149,7 +149,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback"); } }); } @@ -164,7 +164,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback to savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback to savepoint"); } }); } @@ -178,7 +178,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback to savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback to savepoint"); } }); } @@ -194,7 +194,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/rollback to savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/rollback to savepoint"); assertDBSpanLog(traceSegment.getSpans().get(0).getLogs().get(0)); } }); @@ -210,7 +210,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/close"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/close"); } }); } @@ -224,7 +224,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/close"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/close"); } }); } @@ -240,7 +240,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/close"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/close"); assertDBSpanLog(traceSegment.getSpans().get(0).getLogs().get(0)); } }); @@ -257,7 +257,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/releaseSavepoint savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/releaseSavepoint savepoint"); } }); } @@ -271,7 +271,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/releaseSavepoint savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/releaseSavepoint savepoint"); } }); } @@ -287,7 +287,7 @@ public class SWConnectionTest extends AbstractStatementTest { @Override public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); - assertDBSpan(traceSegment.getSpans().get(0), "JDBC/Connection/releaseSavepoint savepoint"); + assertDBSpan(traceSegment.getSpans().get(0), "Mysql/JDBI/Connection/releaseSavepoint savepoint"); assertDBSpanLog(traceSegment.getSpans().get(0).getLogs().get(0)); } }); diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWStatementTest.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWStatementTest.java index 15e3376c3..eaf85b467 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWStatementTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SWStatementTest.java @@ -126,7 +126,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/execute", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/Statement/execute", "SELECT * FROM test"); } }); } @@ -142,7 +142,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/execute", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/Statement/execute", "SELECT * FROM test"); } }); } @@ -158,7 +158,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeQuery", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/Statement/executeQuery", "SELECT * FROM test"); } }); } @@ -174,7 +174,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -192,7 +192,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -208,7 +208,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -224,7 +224,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -240,7 +240,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/execute", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/execute", "UPDATE test SET a = 1"); } }); } @@ -256,7 +256,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/execute", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/Statement/execute", "UPDATE test SET a = 1"); } }); } @@ -278,7 +278,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/executeBatch", ""); + assertDBSpan(span, "Mysql/JDBI/Statement/executeBatch", ""); } }); } @@ -297,7 +297,7 @@ public class SWStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/Statement/execute", "UPDATE test SET a = 1 WHERE b = 2"); + assertDBSpan(span, "Mysql/JDBI/Statement/execute", "UPDATE test SET a = 1 WHERE b = 2"); assertThat(span.getLogs().size(), is(1)); assertDBSpanLog(span.getLogs().get(0)); } diff --git a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SwPreparedStatementTest.java b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SwPreparedStatementTest.java index d370891a5..9217d71fa 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SwPreparedStatementTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/jdbc-plugin/src/test/java/com/a/eye/skywalking/plugin/jdbc/SwPreparedStatementTest.java @@ -296,7 +296,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeQuery", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeQuery", "SELECT * FROM test"); } }); } @@ -317,7 +317,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeQuery", "SELECT * FROM test"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeQuery", "SELECT * FROM test"); } }); } @@ -336,7 +336,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -354,7 +354,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -372,7 +372,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/execute", "INSERT INTO test VALUES(1)"); } }); } @@ -393,7 +393,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/execute", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/execute", "UPDATE test SET a = 1"); } }); } @@ -414,7 +414,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeUpdate", "UPDATE test SET a = ?"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeUpdate", "UPDATE test SET a = ?"); } }); } @@ -435,7 +435,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -455,7 +455,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -475,7 +475,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -495,7 +495,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeUpdate", "UPDATE test SET a = 1"); } }); } @@ -520,7 +520,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeBatch", ""); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeBatch", ""); } }); } @@ -571,7 +571,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest { public void call(TraceSegment traceSegment) { assertThat(traceSegment.getSpans().size(), is(1)); Span span = traceSegment.getSpans().get(0); - assertDBSpan(span, "JDBC/PreparedStatement/executeQuery", "SELECT * FROM test WHERE a = ? or b = ? or c=? or d = ? or e=?"); + assertDBSpan(span, "Mysql/JDBI/PreparedStatement/executeQuery", "SELECT * FROM test WHERE a = ? or b = ? or c=? or d = ? or e=?"); assertThat(span.getLogs().size(), is(1)); assertDBSpanLog(span.getLogs().get(0)); } diff --git a/skywalking-sniffer/skywalking-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/com/a/eye/skywalking/plugin/tomcat78x/TomcatInterceptor.java b/skywalking-sniffer/skywalking-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/com/a/eye/skywalking/plugin/tomcat78x/TomcatInterceptor.java index 0c3475b88..c0eeb5586 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/com/a/eye/skywalking/plugin/tomcat78x/TomcatInterceptor.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/com/a/eye/skywalking/plugin/tomcat78x/TomcatInterceptor.java @@ -43,6 +43,8 @@ public class TomcatInterceptor implements InstanceMethodsAroundInterceptor { Span span = ContextManager.createSpan(request.getRequestURI()); Tags.COMPONENT.set(span, TOMCAT_COMPONENT); + Tags.PEER_HOST.set(span, fetchRequestPeerHost(request)); + Tags.PEER_PORT.set(span, request.getRemotePort()); Tags.SPAN_KIND.set(span, Tags.SPAN_KIND_SERVER); Tags.URL.set(span, request.getRequestURL().toString()); Tags.SPAN_LAYER.asHttp(span); @@ -76,4 +78,29 @@ public class TomcatInterceptor implements InstanceMethodsAroundInterceptor { Tags.ERROR.set(span, true); } + /** + * + * @param request + * @return + */ + public String fetchRequestPeerHost(HttpServletRequest request) { + String ip = request.getHeader("X-Forwarded-For"); + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_CLIENT_IP"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_X_FORWARDED_FOR"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getRemoteAddr(); + } + return ip; + } + }