本文整理汇总了Java中org.springframework.cloud.sleuth.Span类的典型用法代码示例。如果您正苦于以下问题:Java Span类的具体用法?Java Span怎么用?Java Span使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Span类属于org.springframework.cloud.sleuth包,在下文中一共展示了Span类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testShouldAddSpanForPrepatedStatementExecuteUpdate
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldAddSpanForPrepatedStatementExecuteUpdate() throws Exception {
Connection connection = dataSource.getConnection();
connection.prepareStatement("UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1").executeUpdate();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(2);
Span connectionSpan = spanReporter.getSpans().get(0);
Span statementSpan = spanReporter.getSpans().get(1);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_ROW_COUNT_TAG_NAME, "0");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:17,代码来源:TracingJdbcEventListenerTests.java
示例2: testShouldAddSpanForStatementExecuteUpdate
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldAddSpanForStatementExecuteUpdate() throws Exception {
Connection connection = dataSource.getConnection();
connection.createStatement().executeUpdate("UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1");
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(2);
Span connectionSpan = spanReporter.getSpans().get(0);
Span statementSpan = spanReporter.getSpans().get(1);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_ROW_COUNT_TAG_NAME, "0");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:17,代码来源:TracingJdbcEventListenerTests.java
示例3: testShouldAddSpanForPreparedStatementExecuteQueryIncludingTimeToCloseResultSet
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldAddSpanForPreparedStatementExecuteQueryIncludingTimeToCloseResultSet() throws Exception {
Connection connection = dataSource.getConnection();
ResultSet resultSet = connection.prepareStatement("SELECT NOW()").executeQuery();
resultSet.next();
resultSet.next();
resultSet.close();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(3);
Span connectionSpan = spanReporter.getSpans().get(0);
Span resultSetSpan = spanReporter.getSpans().get(1);
Span statementSpan = spanReporter.getSpans().get(2);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(resultSetSpan.getName()).isEqualTo("jdbc:/dataSource/fetch");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "SELECT NOW()");
assertThat(resultSetSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_ROW_COUNT_TAG_NAME, "1");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:22,代码来源:TracingJdbcEventListenerTests.java
示例4: testShouldNotFailWhenStatementIsClosedWihoutResultSet
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldNotFailWhenStatementIsClosedWihoutResultSet() throws Exception {
Connection connection = dataSource.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT NOW()");
resultSet.next();
statement.close();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(3);
Span connectionSpan = spanReporter.getSpans().get(0);
Span resultSetSpan = spanReporter.getSpans().get(1);
Span statementSpan = spanReporter.getSpans().get(2);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(resultSetSpan.getName()).isEqualTo("jdbc:/dataSource/fetch");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "SELECT NOW()");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:21,代码来源:TracingJdbcEventListenerTests.java
示例5: testShouldNotFailWhenConnectionIsClosedWihoutResultSet
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldNotFailWhenConnectionIsClosedWihoutResultSet() throws Exception {
Connection connection = dataSource.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT NOW()");
resultSet.next();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(3);
Span connectionSpan = spanReporter.getSpans().get(0);
Span resultSetSpan = spanReporter.getSpans().get(1);
Span statementSpan = spanReporter.getSpans().get(2);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(resultSetSpan.getName()).isEqualTo("jdbc:/dataSource/fetch");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "SELECT NOW()");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:20,代码来源:TracingJdbcEventListenerTests.java
示例6: testShouldNotFailWhenResultSetNextWasNotCalled
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldNotFailWhenResultSetNextWasNotCalled() throws Exception {
Connection connection = dataSource.getConnection();
Statement statement = connection.createStatement();
ResultSet resultSet = statement.executeQuery("SELECT NOW()");
resultSet.close();
statement.close();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(3);
Span connectionSpan = spanReporter.getSpans().get(0);
Span resultSetSpan = spanReporter.getSpans().get(1);
Span statementSpan = spanReporter.getSpans().get(2);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(resultSetSpan.getName()).isEqualTo("jdbc:/dataSource/fetch");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "SELECT NOW()");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:21,代码来源:TracingJdbcEventListenerTests.java
示例7: testShouldAddSpanForPreparedStatementExecuteUpdate
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldAddSpanForPreparedStatementExecuteUpdate() throws Exception {
Connection connection = dataSource.getConnection();
connection.prepareStatement("UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1").executeUpdate();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(2);
Span connectionSpan = spanReporter.getSpans().get(0);
Span statementSpan = spanReporter.getSpans().get(1);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "UPDATE INFORMATION_SCHEMA.TABLES SET table_Name = '' WHERE 0 = 1");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_ROW_COUNT_TAG_NAME, "0");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:17,代码来源:TracingQueryExecutionListenerTests.java
示例8: testShouldAddSpanForPreparedStatementExecuteQueryIncludingTimeToCloseResultSet
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testShouldAddSpanForPreparedStatementExecuteQueryIncludingTimeToCloseResultSet() throws Exception {
Connection connection = dataSource.getConnection();
ResultSet resultSet = connection.prepareStatement("SELECT NOW()").executeQuery();
Thread.sleep(200L);
resultSet.close();
connection.close();
assertThat(ExceptionUtils.getLastException()).isNull();
assertThat(spanReporter.getSpans()).hasSize(2);
Span connectionSpan = spanReporter.getSpans().get(0);
Span statementSpan = spanReporter.getSpans().get(1);
assertThat(connectionSpan.getName()).isEqualTo("jdbc:/dataSource/connection");
assertThat(statementSpan.getName()).isEqualTo("jdbc:/dataSource/query");
assertThat(statementSpan.tags()).containsEntry(SleuthListenerAutoConfiguration.SPAN_SQL_QUERY_TAG_NAME, "SELECT NOW()");
}
开发者ID:gavlyukovskiy,项目名称:spring-boot-data-source-decorator,代码行数:18,代码来源:TracingQueryExecutionListenerTests.java
示例9: testCreate
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testCreate() {
Task task = new Task();
task.setId(13L);
task.setName("myTask");
taskRepo.create(task);
// check client call and link span
ArgumentCaptor<Span> clientSpanCaptor = ArgumentCaptor.forClass(Span.class);
List<Span> clientSpans = clientSpanCaptor.getAllValues();
Span callSpan = clientSpans.get(0);
Assert.assertEquals("post", callSpan.getName());
Assert.assertTrue(callSpan.toString().contains("\"cs\""));
Assert.assertTrue(callSpan.toString().contains("\"cr\""));
// check server local span
Assert.assertEquals(1, reportedSpans.spans.size());
Span repositorySpan = reportedSpans.spans.get(0);
Assert.assertEquals("crnk:post:/tasks/13", repositorySpan.getName());
Assert.assertTrue(repositorySpan.toString().contains("\"lc\""));
assertBinaryAnnotation(repositorySpan, "lc", "crnk");
assertBinaryAnnotation(repositorySpan, "crnk.query", "?");
}
示例10: testSingleClientRemoteSpan
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testSingleClientRemoteSpan() {
Span parent = Span.builder()
.traceId(123L)
.name("http:call")
.begin(beginTime - 1)
.end(endTime + 1)
.log(new Log(beginTime, Span.CLIENT_SEND))
.log(new Log(endTime, Span.CLIENT_RECV))
.remote(true)
.build();
this.spanListener.report(parent);
Assert.assertEquals(1, this.test.traceSpans.size());
TraceSpan traceSpan = this.test.traceSpans.get(0);
Assert.assertEquals("http:call", traceSpan.getName());
// Client span chould use CS and CR time, not Span begin or end time.
Assert.assertEquals(Timestamp.getDefaultInstance(), traceSpan.getStartTime());
Assert.assertEquals(Timestamp.getDefaultInstance(), traceSpan.getEndTime());
Assert.assertEquals(this.dateFormatter.format(new Date(beginTime)),
traceSpan.getLabelsOrThrow("cloud.spring.io/cs"));
Assert.assertEquals(this.dateFormatter.format(new Date(endTime)),
traceSpan.getLabelsOrThrow("cloud.spring.io/cr"));
Assert.assertEquals(TraceSpan.SpanKind.RPC_CLIENT, traceSpan.getKind());
}
示例11: joinTrace
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Override
public Span joinTrace(Message message) {
final AmqpMessageHeaderAccessor accessor = AmqpMessageHeaderAccessor.getAccessor(message);
if ((!hasHeader(accessor, Span.TRACE_ID_NAME) || !hasHeader(accessor, Span.SPAN_ID_NAME))
&& (!hasHeader(accessor, TraceMessageHeaders.SPAN_ID_NAME)
|| !hasHeader(accessor, TraceMessageHeaders.TRACE_ID_NAME))) {
return null;
}
return extractSpanFromHeaders(
accessor,
Span.builder(),
TraceMessageHeaders.TRACE_ID_NAME,
TraceMessageHeaders.SPAN_ID_NAME,
TraceMessageHeaders.SAMPLED_NAME,
TraceMessageHeaders.PROCESS_ID_NAME,
TraceMessageHeaders.SPAN_NAME_NAME,
TraceMessageHeaders.PARENT_ID_NAME);
}
示例12: testInjectSuccess
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testInjectSuccess() {
final AmqpMessagingSpanInjector spanInjector = new AmqpMessagingSpanInjector(new TraceKeys());
final Span span =
Span.builder().spanId(Span.hexToId("123")).traceId(Span.hexToId("456")).build();
final Message message = new Message("Test".getBytes(), new MessageProperties());
spanInjector.inject(span, message);
final Map<String, Object> headers = message.getMessageProperties().getHeaders();
Assert.assertEquals("1", headers.get(TraceMessageHeaders.SAMPLED_NAME));
Assert.assertEquals("0000000000000123", headers.get(TraceMessageHeaders.SPAN_ID_NAME));
Assert.assertEquals("0000000000000456", headers.get(TraceMessageHeaders.TRACE_ID_NAME));
Assert.assertEquals(4, headers.size());
}
示例13: testInjectWithParentIdSuccess
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testInjectWithParentIdSuccess() {
final AmqpMessagingSpanInjector spanInjector = new AmqpMessagingSpanInjector(new TraceKeys());
final Span span =
Span.builder()
.parent(Span.hexToId("999"))
.spanId(Span.hexToId("123"))
.traceId(Span.hexToId("456"))
.build();
final Message message = new Message("Test".getBytes(), new MessageProperties());
spanInjector.inject(span, message);
final Map<String, Object> headers = message.getMessageProperties().getHeaders();
Assert.assertEquals("1", headers.get(TraceMessageHeaders.SAMPLED_NAME));
Assert.assertEquals("0000000000000999", headers.get(TraceMessageHeaders.PARENT_ID_NAME));
Assert.assertEquals("0000000000000123", headers.get(TraceMessageHeaders.SPAN_ID_NAME));
Assert.assertEquals("0000000000000456", headers.get(TraceMessageHeaders.TRACE_ID_NAME));
Assert.assertEquals(5, headers.size());
}
示例14: testInjectSpanNotExportableSuccess
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testInjectSpanNotExportableSuccess() {
final AmqpMessagingSpanInjector spanInjector = new AmqpMessagingSpanInjector(new TraceKeys());
final Message message = new Message("Test".getBytes(), new MessageProperties());
final Span span =
Span.builder()
.exportable(false)
.spanId(Span.hexToId("123"))
.traceId(Span.hexToId("456"))
.build();
spanInjector.inject(span, message);
final Map<String, Object> headers = message.getMessageProperties().getHeaders();
Assert.assertEquals("0", headers.get(TraceMessageHeaders.SAMPLED_NAME));
Assert.assertEquals("0000000000000123", headers.get(TraceMessageHeaders.SPAN_ID_NAME));
Assert.assertEquals("0000000000000456", headers.get(TraceMessageHeaders.TRACE_ID_NAME));
Assert.assertEquals(4, headers.size());
}
示例15: testJoinTraceCompleteSuccess
import org.springframework.cloud.sleuth.Span; //导入依赖的package包/类
@Test
public void testJoinTraceCompleteSuccess() {
final MessageProperties messageProperties = new MessageProperties();
messageProperties.setHeader(TraceMessageHeaders.TRACE_ID_NAME, "123");
messageProperties.setHeader(TraceMessageHeaders.SPAN_ID_NAME, "456");
messageProperties.setHeader(TraceMessageHeaders.SPAN_NAME_NAME, "amqp");
messageProperties.setHeader(TraceMessageHeaders.PARENT_ID_NAME, "111");
messageProperties.setHeader(TraceMessageHeaders.PROCESS_ID_NAME, "process");
final Message message = new Message("Test".getBytes(), messageProperties);
final Span span = spanExtractor.joinTrace(message);
Assert.assertEquals("0000000000000123", span.traceIdString());
Assert.assertEquals("0000000000000456", Span.idToHex(span.getSpanId()));
Assert.assertEquals("amqp", span.getName());
Assert.assertEquals("0000000000000111", Span.idToHex(span.getParents().get(0)));
Assert.assertEquals("process", span.getProcessId());
}