use of zipkin2.proto3.Span in project zipkin by openzipkin.
the class V1ThriftSpanWriterTest method writesEmptySpanName.
@Test
public void writesEmptySpanName() {
Span span = Span.newBuilder().traceId("1").id("2").build();
writer.write(span, buf);
assertThat(bytes).containsSequence(ThriftField.TYPE_STRING, 0, 3, 0, 0, 0, // name (empty is 32 zero bits)
0);
}
use of zipkin2.proto3.Span in project zipkin by openzipkin.
the class V1ThriftSpanWriterTest method writesEmptyAnnotationAndBinaryAnnotations.
/**
* For finagle compatibility
*/
@Test
public void writesEmptyAnnotationAndBinaryAnnotations() {
Span span = Span.newBuilder().traceId("1").id("2").build();
writer.write(span, buf);
assertThat(bytes).containsSequence(TYPE_LIST, 0, 6, TYPE_STRUCT, 0, 0, 0, // empty annotations
0).containsSequence(TYPE_LIST, 0, 8, TYPE_STRUCT, 0, 0, 0, // empty binary annotations
0);
}
use of zipkin2.proto3.Span in project zipkin by openzipkin.
the class InMemoryStorageTest method getTraces_byTraceIds.
@Test
public void getTraces_byTraceIds() throws IOException {
Span trace1Span1 = Span.newBuilder().traceId("1").id("1").name("root").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
Span trace1Span2 = Span.newBuilder().traceId("1").parentId("1").id("2").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
Span trace2Span1 = Span.newBuilder().traceId("2").id("1").name("root").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
Span trace2Span2 = Span.newBuilder().traceId("2").parentId("1").id("2").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
storage.accept(asList(trace1Span1, trace1Span2, trace2Span1, trace2Span2)).execute();
assertThat(storage.getTraces(asList("1", "2")).execute()).containsExactly(asList(trace1Span1, trace1Span2), asList(trace2Span1, trace2Span2));
}
use of zipkin2.proto3.Span in project zipkin by openzipkin.
the class InMemoryStorageTest method replayOverwrites.
/**
* It should be safe to run dependency link jobs twice
*/
@Test
public void replayOverwrites() throws IOException {
Span span = Span.newBuilder().traceId("10").id("10").name("receive").kind(Span.Kind.CONSUMER).localEndpoint(Endpoint.newBuilder().serviceName("app").build()).remoteEndpoint(Endpoint.newBuilder().serviceName("kafka").build()).timestamp(TODAY * 1000).build();
storage.accept(asList(span)).execute();
storage.accept(asList(span)).execute();
assertThat(storage.getDependencies(TODAY + 1000L, TODAY).execute()).containsOnly(DependencyLink.newBuilder().parent("kafka").child("app").callCount(1L).build());
}
use of zipkin2.proto3.Span in project zipkin by openzipkin.
the class InMemoryStorageTest method getSpanNames_skipsNullSpanName.
@Test
public void getSpanNames_skipsNullSpanName() throws IOException {
Span span1 = Span.newBuilder().traceId("1").id("1").name("root").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
Span span2 = Span.newBuilder().traceId("1").parentId("1").id("2").localEndpoint(Endpoint.newBuilder().serviceName("app").build()).timestamp(TODAY * 1000).build();
storage.accept(asList(span1, span2)).execute();
assertThat(storage.getSpanNames("app").execute()).containsOnly("root");
}
Aggregations