Search in sources :

Example 56 with Span

use of com.google.devtools.cloudtrace.v2.Span in project zipkin by openzipkin.

the class CassandraUtilTest method annotationKeys_skipsTagsLongerThan256chars.

@Test
public void annotationKeys_skipsTagsLongerThan256chars() {
    // example long value
    String arn = "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012";
    // example too long value
    String url = "http://webservices.amazon.com/onca/xml?AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE&AssociateTag=mytag-20&ItemId=0679722769&Operation=ItemLookup&ResponseGroup=Images%2CItemAttributes%2COffers%2CReviews&Service=AWSECommerceService&Timestamp=2014-08-18T12%3A00%3A00Z&Version=2013-08-01&Signature=j7bZM0LXZ9eXeZruTqWm2DIvDYVUU3wxPPpp%2BiXxzQc%3D";
    Span span = TestObjects.CLIENT_SPAN.toBuilder().putTag("aws.arn", arn).putTag("http.url", url).build();
    assertThat(CassandraUtil.annotationQuery(span)).contains("aws.arn", "aws.arn=" + arn).doesNotContain("http.url").doesNotContain("http.url=" + url);
}
Also used : Span(zipkin2.Span) Test(org.junit.Test)

Example 57 with Span

use of com.google.devtools.cloudtrace.v2.Span in project zipkin by openzipkin.

the class CassandraUtilTest method annotationKeys_skipsAllocationWhenNoValidInput.

@Test
public void annotationKeys_skipsAllocationWhenNoValidInput() {
    // example too long value
    String url = "http://webservices.amazon.com/onca/xml?AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE&AssociateTag=mytag-20&ItemId=0679722769&Operation=ItemLookup&ResponseGroup=Images%2CItemAttributes%2COffers%2CReviews&Service=AWSECommerceService&Timestamp=2014-08-18T12%3A00%3A00Z&Version=2013-08-01&Signature=j7bZM0LXZ9eXeZruTqWm2DIvDYVUU3wxPPpp%2BiXxzQc%3D";
    Span span = Span.newBuilder().traceId("1").id("1").build();
    assertThat(CassandraUtil.annotationQuery(span)).isNull();
    span = span.toBuilder().addAnnotation(1L, url).putTag("http.url", url).build();
    assertThat(CassandraUtil.annotationQuery(span)).isNull();
}
Also used : Span(zipkin2.Span) Test(org.junit.Test)

Example 58 with Span

use of com.google.devtools.cloudtrace.v2.Span in project zipkin by openzipkin.

the class ITEnsureSchema method worksWithOldSchema.

/**
 * This tests we don't accidentally rely on new indexes such as autocomplete tags
 */
@Test
void worksWithOldSchema(TestInfo testInfo) throws Exception {
    String testSuffix = testSuffix(testInfo);
    Schema.applyCqlFile(storage.keyspace, session(), "/zipkin2-schema.cql");
    Schema.applyCqlFile(storage.keyspace, session(), "/zipkin2-schema-indexes-original.cql");
    // Ensure the storage component is functional before proceeding
    CheckResult check = storage.check();
    if (!check.ok()) {
        throw new AssertionError("Could not connect to storage: " + check.error().getMessage(), check.error());
    }
    List<Span> trace = newTrace(testSuffix);
    accept(trace);
    assertGetTraceReturns(trace.get(0).traceId(), trace);
    assertThat(storage.autocompleteTags().getValues("environment").execute()).isEmpty();
    String serviceName = trace.get(0).localServiceName();
    assertThat(storage.serviceAndSpanNames().getRemoteServiceNames(serviceName).execute()).isEmpty();
    QueryRequest request = requestBuilder().serviceName(serviceName).remoteServiceName(appendSuffix(BACKEND.serviceName(), testSuffix)).build();
    // Make sure there's an error if a query will return incorrectly vs returning invalid results
    assertThatThrownBy(() -> storage.spanStore().getTraces(request)).isInstanceOf(IllegalArgumentException.class).hasMessage("remoteService=" + trace.get(1).remoteServiceName() + " unsupported due to missing table remote_service_by_service");
}
Also used : QueryRequest(zipkin2.storage.QueryRequest) CheckResult(zipkin2.CheckResult) Span(zipkin2.Span) Test(org.junit.jupiter.api.Test)

Example 59 with Span

use of com.google.devtools.cloudtrace.v2.Span in project zipkin by openzipkin.

the class ElasticsearchSpanConsumerTest method addsTimestamp_millisIntoJson.

@Test
void addsTimestamp_millisIntoJson() throws Exception {
    server.enqueue(SUCCESS_RESPONSE);
    Span span = Span.newBuilder().traceId("20").id("20").name("get").timestamp(TODAY * 1000).build();
    accept(span);
    assertThat(server.takeRequest().request().contentUtf8()).contains("\n{\"timestamp_millis\":" + TODAY + ",\"traceId\":");
}
Also used : Span(zipkin2.Span) Test(org.junit.jupiter.api.Test)

Example 60 with Span

use of com.google.devtools.cloudtrace.v2.Span in project zipkin by openzipkin.

the class ElasticsearchSpanConsumerTest method traceIsSearchableByServerServiceName.

@Test
void traceIsSearchableByServerServiceName() throws Exception {
    server.enqueue(SUCCESS_RESPONSE);
    Span clientSpan = Span.newBuilder().traceId("20").id("22").name("").parentId("21").timestamp(1000L).kind(Kind.CLIENT).localEndpoint(WEB_ENDPOINT).build();
    Span serverSpan = Span.newBuilder().traceId("20").id("22").name("get").parentId("21").timestamp(2000L).kind(Kind.SERVER).localEndpoint(APP_ENDPOINT).build();
    accept(serverSpan, clientSpan);
    // make sure that both timestamps are in the index
    assertThat(server.takeRequest().request().contentUtf8()).contains("{\"timestamp_millis\":2").contains("{\"timestamp_millis\":1");
}
Also used : Span(zipkin2.Span) Test(org.junit.jupiter.api.Test)

Aggregations

Span (zipkin2.Span)290 Test (org.junit.Test)192 Test (org.junit.jupiter.api.Test)67 TestObjects.newClientSpan (zipkin2.TestObjects.newClientSpan)41 Endpoint (zipkin2.Endpoint)37 ArrayList (java.util.ArrayList)24 V1Span (zipkin2.v1.V1Span)17 List (java.util.List)14 AggregateCall (zipkin2.internal.AggregateCall)13 TraceSpan (com.google.devtools.cloudtrace.v1.TraceSpan)12 Arrays.asList (java.util.Arrays.asList)9 Map (java.util.Map)9 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)9 Span (com.google.devtools.cloudtrace.v2.Span)8 LinkedHashMap (java.util.LinkedHashMap)8 Trace (com.google.devtools.cloudtrace.v1.Trace)7 Span (zipkin2.proto3.Span)7 SpanData (io.opencensus.trace.export.SpanData)6 SpanCustomizer (brave.SpanCustomizer)5 IOException (java.io.IOException)5