protected void registerCodec(JaegerTracer.Builder builder, Format<TextMap> format) { if (codecs.containsKey(format)) { List<Codec<TextMap>> codecsForFormat = codecs.get(format); Codec<TextMap> codec = codecsForFormat.size() == 1 ? codecsForFormat.get(0) : new CompositeCodec<TextMap>(codecsForFormat); builder.registerInjector(format, codec); builder.registerExtractor(format, codec); } } }
protected Builder(String serviceName, JaegerObjectFactory objectFactory) { this.serviceName = checkValidServiceName(serviceName); this.objectFactory = objectFactory; TextMapCodec textMapCodec = TextMapCodec.builder() .withUrlEncoding(false) .withObjectFactory(this.objectFactory) .build(); this.registerInjector(Format.Builtin.TEXT_MAP, textMapCodec); this.registerExtractor(Format.Builtin.TEXT_MAP, textMapCodec); TextMapCodec httpCodec = TextMapCodec.builder() .withUrlEncoding(true) .withObjectFactory(this.objectFactory) .build(); this.registerInjector(Format.Builtin.HTTP_HEADERS, httpCodec); this.registerExtractor(Format.Builtin.HTTP_HEADERS, httpCodec); // TODO binary codec not implemented }
@Override public void customize(JaegerTracer.Builder builder) { B3TextMapCodec injector = new B3TextMapCodec(); builder.registerInjector(Format.Builtin.HTTP_HEADERS, injector) .registerExtractor(Format.Builtin.HTTP_HEADERS, injector); } }
@Override public Tracer getTracer(StagemonitorPlugin.InitArguments initArguments) { final B3TextMapCodec b3TextMapCodec = new B3TextMapCodec.Builder().build(); final JaegerTracer.Builder builder = new JaegerTracer.Builder( initArguments.getMeasurementSession().getApplicationName()) .withReporter(new NoopReporter()) .withSampler(new ConstSampler(true)) .registerInjector(B3HeaderFormat.INSTANCE, b3TextMapCodec) .registerInjector(Format.Builtin.HTTP_HEADERS, b3TextMapCodec) .registerExtractor(Format.Builtin.HTTP_HEADERS, b3TextMapCodec); return builder.build(); }
@Override public Tracer getTracer(StagemonitorPlugin.InitArguments initArguments) { final B3TextMapCodec b3TextMapCodec = new B3TextMapCodec.Builder().build(); final JaegerTracer.Builder builder = new JaegerTracer.Builder( initArguments.getMeasurementSession().getApplicationName()) .withReporter(new NoopReporter()) .withSampler(new ConstSampler(true)) .registerInjector(B3HeaderFormat.INSTANCE, b3TextMapCodec) .registerInjector(Format.Builtin.HTTP_HEADERS, b3TextMapCodec) .registerExtractor(Format.Builtin.HTTP_HEADERS, b3TextMapCodec); return builder.build(); }