3

示されているパターンでログに x-b3-traceid と x-b3-spanid を挿入したい-

property name="PATTERN" value="%h %l %u [%date{dd/MMM/yyyy:HH:mm:ss.SSS}] "%r" %s %b "%i{Referer}" "%i{User-Agent}" [trace=%responseHeader{X-B3-TraceId},span=%i{X-B3-SpanId}] %D"

ジップキンの場合、次のような利用可能なライブラリがあります

brave-context-log4j2 – ( https://github.com/openzipkin/brave/tree/master/context/log4j2 )

春の雲の探偵。( https://cloud.spring.io/spring-cloud-sleuth/ ) jaeger の使用中にそれを追加するにはどうすればよいですか?

4

1 に答える 1

2

Jaegar を使用するための最善の方法は、JAEGAR CLIENT を使用しないことです。Jaegar には、Zipkin スパンを収集する機能があります。

https://www.jaegertracing.io/docs/1.8/getting-started/#migrating-from-zipkin

これを利用して、以下の Sleuth+Zipkin 依存関係を使用し、Spring Boot アプリで Jaegar エージェント jar を除外する必要があります。

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-sleuth-zipkin</artifactId>
    </dependency>

上記は、デフォルトで Zipkin スパンを http://localhost:9411 に送信します。zipkin ベース URL をオーバーライドすることで、Spring Boot アプリでこれをオーバーライドして Jaegar サーバーを簡単に指すことができます。

spring.zipkin.base-url=http://your-jaegar-server:9411

Sleuth がすべての面倒な作業を行い、デフォルトのロギングでスパンと traceId が記録されます。

log4j2.xmlファイルでは、あなたが言及しなければならないのは

[%X]

このアプローチの実例を GitHub にアップロードし、リンクを共有します。

編集1:

サンプルコードは次の場所にあります。

https://github.com/anoophp777/spring-webflux-jaegar-log4j2

于 2018-11-16T16:11:14.063 に答える