Search in sources :

Example 1 with CodecConfiguration

use of io.jaegertracing.Configuration.CodecConfiguration in project jaeger-client-java by jaegertracing.

the class ConfigurationTest method testCodecFromString.

@Test
public void testCodecFromString() {
    CodecConfiguration codecConfiguration = CodecConfiguration.fromString(String.format("%s,%s,%s", Propagation.B3.name(), Propagation.JAEGER.name(), Propagation.W3C.name()));
    assertEquals(2, codecConfiguration.getCodecs().size());
    assertEquals(3, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).size());
    assertEquals(3, codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).size());
    assertEquals(1, codecConfiguration.getBinaryCodecs().get(Builtin.BINARY).size());
    assertTrue(codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(0) instanceof B3TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(1) instanceof TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(2) instanceof TraceContextCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).get(0) instanceof B3TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).get(1) instanceof TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).get(2) instanceof TraceContextCodec);
    assertTrue(codecConfiguration.getBinaryCodecs().get(Builtin.BINARY).get(0) instanceof BinaryCodec);
}
Also used : TraceContextCodec(io.jaegertracing.internal.propagation.TraceContextCodec) BinaryCodec(io.jaegertracing.internal.propagation.BinaryCodec) CodecConfiguration(io.jaegertracing.Configuration.CodecConfiguration) B3TextMapCodec(io.jaegertracing.internal.propagation.B3TextMapCodec) TextMapCodec(io.jaegertracing.internal.propagation.TextMapCodec) B3TextMapCodec(io.jaegertracing.internal.propagation.B3TextMapCodec) Test(org.junit.Test)

Example 2 with CodecConfiguration

use of io.jaegertracing.Configuration.CodecConfiguration in project jaeger-client-java by jaegertracing.

the class ConfigurationTest method testCodecWithPropagationB3.

@Test
public void testCodecWithPropagationB3() {
    CodecConfiguration codecConfiguration = new CodecConfiguration().withPropagation(Propagation.B3);
    assertEquals(2, codecConfiguration.getCodecs().size());
    assertEquals(1, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).size());
    assertEquals(1, codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).size());
    assertTrue(codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(0) instanceof B3TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).get(0) instanceof B3TextMapCodec);
}
Also used : CodecConfiguration(io.jaegertracing.Configuration.CodecConfiguration) B3TextMapCodec(io.jaegertracing.internal.propagation.B3TextMapCodec) Test(org.junit.Test)

Example 3 with CodecConfiguration

use of io.jaegertracing.Configuration.CodecConfiguration in project jaeger-client-java by jaegertracing.

the class ConfigurationTest method testAddedCodecs.

@Test
public void testAddedCodecs() {
    Codec<TextMap> codec1 = new Codec<TextMap>() {

        @Override
        public JaegerSpanContext extract(TextMap carrier) {
            return null;
        }

        @Override
        public void inject(JaegerSpanContext spanContext, TextMap carrier) {
        }
    };
    Codec<TextMap> codec2 = new Codec<TextMap>() {

        @Override
        public JaegerSpanContext extract(TextMap carrier) {
            return null;
        }

        @Override
        public void inject(JaegerSpanContext spanContext, TextMap carrier) {
        }
    };
    Codec<Binary> codec3 = new Codec<Binary>() {

        @Override
        public JaegerSpanContext extract(Binary carrier) {
            return null;
        }

        @Override
        public void inject(JaegerSpanContext spanContext, Binary carrier) {
        }
    };
    CodecConfiguration codecConfiguration = new CodecConfiguration().withCodec(Builtin.HTTP_HEADERS, codec1).withCodec(Builtin.HTTP_HEADERS, codec2).withBinaryCodec(Builtin.BINARY, codec3);
    assertEquals(2, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).size());
    assertEquals(codec1, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(0));
    assertEquals(codec2, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(1));
    assertEquals(codec3, codecConfiguration.getBinaryCodecs().get(Builtin.BINARY).get(0));
    Configuration configuration = new Configuration("foo").withCodec(codecConfiguration);
    long traceIdLow = 2L;
    long spanId = 11L;
    long parentId = 22L;
    JaegerSpanContext spanContext = new JaegerSpanContext(0, traceIdLow, spanId, parentId, (byte) 0);
    assertInjectExtract(configuration.getTracer(), Builtin.TEXT_MAP, spanContext, false);
    // added codecs above overrides the default implementation
    assertInjectExtract(configuration.getTracer(), Builtin.HTTP_HEADERS, spanContext, true);
}
Also used : TraceContextCodec(io.jaegertracing.internal.propagation.TraceContextCodec) B3TextMapCodec(io.jaegertracing.internal.propagation.B3TextMapCodec) Codec(io.jaegertracing.spi.Codec) BinaryCodec(io.jaegertracing.internal.propagation.BinaryCodec) TextMapCodec(io.jaegertracing.internal.propagation.TextMapCodec) SenderConfiguration(io.jaegertracing.Configuration.SenderConfiguration) CodecConfiguration(io.jaegertracing.Configuration.CodecConfiguration) ReporterConfiguration(io.jaegertracing.Configuration.ReporterConfiguration) SamplerConfiguration(io.jaegertracing.Configuration.SamplerConfiguration) CodecConfiguration(io.jaegertracing.Configuration.CodecConfiguration) TextMap(io.opentracing.propagation.TextMap) Binary(io.opentracing.propagation.Binary) JaegerSpanContext(io.jaegertracing.internal.JaegerSpanContext) Test(org.junit.Test)

Example 4 with CodecConfiguration

use of io.jaegertracing.Configuration.CodecConfiguration in project jaeger-client-java by jaegertracing.

the class ConfigurationTest method testCodecWithPropagationJaeger.

@Test
public void testCodecWithPropagationJaeger() {
    CodecConfiguration codecConfiguration = new CodecConfiguration().withPropagation(Propagation.JAEGER);
    assertEquals(2, codecConfiguration.getCodecs().size());
    assertEquals(1, codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).size());
    assertEquals(1, codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).size());
    assertTrue(codecConfiguration.getCodecs().get(Builtin.HTTP_HEADERS).get(0) instanceof TextMapCodec);
    assertTrue(codecConfiguration.getCodecs().get(Builtin.TEXT_MAP).get(0) instanceof TextMapCodec);
    assertEquals(1, codecConfiguration.getBinaryCodecs().size());
    assertTrue(codecConfiguration.getBinaryCodecs().get(Builtin.BINARY).get(0) instanceof BinaryCodec);
}
Also used : BinaryCodec(io.jaegertracing.internal.propagation.BinaryCodec) CodecConfiguration(io.jaegertracing.Configuration.CodecConfiguration) B3TextMapCodec(io.jaegertracing.internal.propagation.B3TextMapCodec) TextMapCodec(io.jaegertracing.internal.propagation.TextMapCodec) Test(org.junit.Test)

Aggregations

CodecConfiguration (io.jaegertracing.Configuration.CodecConfiguration)4 B3TextMapCodec (io.jaegertracing.internal.propagation.B3TextMapCodec)4 Test (org.junit.Test)4 BinaryCodec (io.jaegertracing.internal.propagation.BinaryCodec)3 TextMapCodec (io.jaegertracing.internal.propagation.TextMapCodec)3 TraceContextCodec (io.jaegertracing.internal.propagation.TraceContextCodec)2 ReporterConfiguration (io.jaegertracing.Configuration.ReporterConfiguration)1 SamplerConfiguration (io.jaegertracing.Configuration.SamplerConfiguration)1 SenderConfiguration (io.jaegertracing.Configuration.SenderConfiguration)1 JaegerSpanContext (io.jaegertracing.internal.JaegerSpanContext)1 Codec (io.jaegertracing.spi.Codec)1 Binary (io.opentracing.propagation.Binary)1 TextMap (io.opentracing.propagation.TextMap)1