Search in sources :

Example 1 with Span

use of com.twitter.zipkin.thriftjava.Span in project zipkin by openzipkin.

the class ThriftCodecInteropTest method spanSerializationIsCompatible.

@Test
public void spanSerializationIsCompatible() throws UnknownHostException, TException {
    zipkin.Endpoint zipkinEndpoint = zipkin.Endpoint.builder().serviceName("web").ipv4(124 << 24 | 13 << 16 | 90 << 8 | 3).ipv6(Inet6Address.getByName("2001:db8::c001").getAddress()).port((short) 80).build();
    zipkin.Span zipkinSpan = zipkin.Span.builder().traceId(1L).traceIdHigh(2L).id(1L).name("get").addAnnotation(zipkin.Annotation.create(1000, SERVER_RECV, zipkinEndpoint)).addAnnotation(zipkin.Annotation.create(1350, SERVER_SEND, zipkinEndpoint)).build();
    Endpoint thriftEndpoint = new Endpoint().setService_name("web").setIpv4(124 << 24 | 13 << 16 | 90 << 8 | 3).setIpv6(Inet6Address.getByName("2001:db8::c001").getAddress()).setPort((short) 80);
    Span thriftSpan = new Span(1L, "get", 1L, asList(new Annotation(1000, SERVER_RECV).setHost(thriftEndpoint), new Annotation(1350, SERVER_SEND).setHost(thriftEndpoint)), asList()).setTrace_id_high(2L);
    assertThat(serializer.serialize(thriftSpan)).isEqualTo(Codec.THRIFT.writeSpan(zipkinSpan));
    assertThat(Codec.THRIFT.writeSpan(zipkinSpan)).isEqualTo(serializer.serialize(thriftSpan));
    Span deserializedThrift = new Span();
    deserializer.deserialize(deserializedThrift, Codec.THRIFT.writeSpan(zipkinSpan));
    assertThat(deserializedThrift).isEqualTo(thriftSpan);
    assertThat(Codec.THRIFT.readSpan(serializer.serialize(thriftSpan))).isEqualTo(zipkinSpan);
}
Also used : Endpoint(com.twitter.zipkin.thriftjava.Endpoint) Span(com.twitter.zipkin.thriftjava.Span) Annotation(com.twitter.zipkin.thriftjava.Annotation) Test(org.junit.Test)

Aggregations

Annotation (com.twitter.zipkin.thriftjava.Annotation)1 Endpoint (com.twitter.zipkin.thriftjava.Endpoint)1 Span (com.twitter.zipkin.thriftjava.Span)1 Test (org.junit.Test)1