use of com.uber.jaeger.Tracer in project jaeger-client-java by jaegertracing.
the class BaggageSetterTest method testUnsampledSpan.
@Test
public void testUnsampledSpan() {
tracer = new Tracer.Builder("SamplerTest", reporter, new ConstSampler(false)).withMetrics(metrics).build();
span = (Span) tracer.buildSpan("some-operation").startManual();
when(mgr.getRestriction(SERVICE, KEY)).thenReturn(Restriction.of(true, 5));
final String value = "value";
SpanContext ctx = setter.setBaggage(span, KEY, value);
assertEquals(value, ctx.getBaggageItem(KEY));
// No logs should be written if the span is not sampled
assertNull(span.getLogs());
}
use of com.uber.jaeger.Tracer in project jaeger-client-java by jaegertracing.
the class InMemoryMetricsFactoryTest method canBeUsedWithMetrics.
@Test
public void canBeUsedWithMetrics() {
InMemoryMetricsFactory metricsFactory = new InMemoryMetricsFactory();
Tracer tracer = new Tracer.Builder("metricsFactoryTest", new InMemoryReporter(), new ConstSampler(true)).withMetrics(new Metrics(metricsFactory)).build();
tracer.buildSpan("theoperation").start();
assertEquals(1, metricsFactory.getCounter("jaeger:started_spans", "sampled=y"));
assertEquals(0, metricsFactory.getCounter("jaeger:started_spans", "sampled=n"));
assertEquals(1, metricsFactory.getCounter("jaeger:traces", "sampled=y,state=started"));
assertEquals(0, metricsFactory.getCounter("jaeger:traces", "sampled=n,state=started"));
}
use of com.uber.jaeger.Tracer in project jaeger-client-java by jaegertracing.
the class NoopMetricsFactoryTest method canBeUsedWithMetrics.
@Test
public void canBeUsedWithMetrics() {
NoopMetricsFactory metricsFactory = new NoopMetricsFactory();
Tracer tracer = new Tracer.Builder("metricsFactoryTest", new InMemoryReporter(), new ConstSampler(true)).withMetrics(new Metrics(metricsFactory)).build();
tracer.buildSpan("theoperation").start();
}
use of com.uber.jaeger.Tracer in project jaeger-client-java by jaegertracing.
the class RemoteReporterTest method testFlushIsCalledOnSender.
@Test
public void testFlushIsCalledOnSender() throws InterruptedException {
CountDownLatch latch = new CountDownLatch(1);
Sender sender = new InMemorySender() {
@Override
public int flush() throws SenderException {
latch.countDown();
return super.flush();
}
};
reporter = new RemoteReporter(sender, flushInterval, maxQueueSize, metrics);
tracer = new Tracer.Builder("test-remote-reporter", reporter, new ConstSampler(true)).withMetrics(metrics).build();
tracer.buildSpan("mySpan").start().finish();
latch.await(1, TimeUnit.SECONDS);
assertEquals("Should have called the custom sender flush", 0, latch.getCount());
}
use of com.uber.jaeger.Tracer in project jaeger-client-java by jaegertracing.
the class ThriftSpanConverterTest method testTracerTags.
@Test
@UseDataProvider("dataProviderTracerTags")
public void testTracerTags(SpanType spanType, Map<String, String> expectedTags) throws Exception {
InMemoryReporter spanReporter = new InMemoryReporter();
Tracer tracer = new Tracer.Builder("x", spanReporter, new ConstSampler(true)).withZipkinSharedRpcSpan().withTag("tag.str", "y").withTag("tag.bool", true).withTag("tag.num", 1).build();
Span span = (Span) tracer.buildSpan("root").startManual();
if (spanType == SpanType.CHILD) {
span = (Span) tracer.buildSpan("child").asChildOf(span).startManual();
} else if (spanType == SpanType.RPC_SERVER) {
span = (Span) tracer.buildSpan("rpc-server").asChildOf(span).withTag(Tags.SPAN_KIND.getKey(), Tags.SPAN_KIND_SERVER).startManual();
}
com.twitter.zipkin.thriftjava.Span zipkinSpan = ThriftSpanConverter.convertSpan(span);
List<BinaryAnnotation> annotations = zipkinSpan.getBinary_annotations();
for (Map.Entry<String, String> entry : expectedTags.entrySet()) {
String key = entry.getKey();
Object expectedValue = entry.getValue();
BinaryAnnotation anno = findBinaryAnnotation(annotations, key);
if (expectedValue.equals(UNDEF)) {
assertNull("Not expecting " + key + " for " + spanType, anno);
} else if (expectedValue.equals(ANY)) {
assertEquals(key, anno.getKey());
} else {
String actualValue = new String(anno.getValue(), StandardCharsets.UTF_8);
assertEquals("Expecting " + key + " for " + spanType, expectedValue, actualValue);
}
}
}
Aggregations