ホーム>source

次のようなパターンでログに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"

zipkinsには、次のようなライブラリがあります

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

春のクラウドスルース。 (https://cloud.spring.io/spring-cloud-sleuth/) jaegerを使用しているときに追加するにはどうすればよいですか?

あなたの答え
  • 解決した方法 # 1

    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をオーバーライドすることにより、Jaegarサーバーを簡単に指すようにSpring Bootアプリでこれをオーバーライドできます。

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

    Sleuthはすべての面倒な作業を行い、デフォルトのロギングはspanとtraceIdを記録します。

    log4j2.xmlファイルでは、言及する必要があるのは

    [%X]
    
    

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

    幸運を!

    アヌープ

    編集1:

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

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

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ html - VBA:Internet Explorerの入力ボックスに入力できない