[]春クラウドスプリングクラウドのスプリングクラウドスルース、分散トラッキングサービス(1)

まず、役割春クラウドスルースコンポーネント

  分散型マイクロサービスアーキテクチャのためのサービスを追跡する能力を増加させ、各要求、呼び出しを追跡するための完全なリンクのために、私たちはすぐにエラーやパフォーマンスのボトルネック監視および分析の根本原因リンクなどの各要求を識別するのに役立ちます。

第二に、プロジェクトは春クラウドスルースコンポーネント導入方法
1)を、ばねクラウドスターター探偵依存増加

            <! -探偵- > 
            <依存> 
                <groupIdを> org.springframework.cloud </ groupIdを> 
                <たartifactId>春・クラウド・スターター・探偵</たartifactId> 
                <バージョン> 2.03 .RELEASE </バージョン> 
            </依存関係>

プロジェクト構成2)対応する増加

#サービス名知っ
spring.application.nameを:サービス -order 
#1 leuthは追跡情報を制御するために使用されるパラメータのすべてのための1のサンプリング比を指定されたサードパーティのサービスのzipkinに送信され
sleuth.sampler.probability:1

3)印刷形式プロジェクトのログを変更、目的は、spanid等TRACEIDに関する追跡情報を印刷します

コンソールパターン:コンソール出力ログ・フォーマット
パターンファイル:ファイルの出力形式をログに記録
コンソールパターン:   ' %のD {YYYY-MM-DD HH:MM:SS.SSS} [$ {spring.application.name: - }、%のX {X-B3-TRACEID: - }、%のX {X- B3-SpanId: - }、%X {X-スパンエクスポート: - }]%boldYellow([%スレッド])%のハイライト(% - 5level)%boldGreen(%ロガー{50}%M \(%F: %のLの\)) - %のMSG%N ' 
ファイル -pattern:' %のD {YYYY-MM-DD HH:MM:SS.SSS} [$ {spring.application.name: - }、%のX {X-B3 -TraceId: - }、%のX {X-B3-SpanId: - }、%のX {X-スパンエクスポート: - }] [%スレッド]%-5level%ロガー{50} - %のMSGの%のN '

ログ出力方法を増やし、ログ印刷効果を見るためにプロジェクトを開始し、そのように4)コントローラ

log.info( "テスト探偵ログ");

三、スルース関連する概念を導入

1)トレースIDは、同等の記​​述をSpanId

次のようにプロジェクトや要求を実行して、あなたは、このログが表示されます。

2019 - 09 - 10  003715.585   INFO [サービス注文、313fe940c4574c66,313fe940c4574c66、真]  5687 --- [IO- 10850 -exec- 1 c.zbq.order.controller.OrderController]:試験スルースログ

赤い印トレースログ:[サービス-ため、313fe940c4574c66,313fe940c4574c66、真] 

これは、分散型追跡サービスを実装するために、これらの要素の重要な部分であり、各値の意味は以下のとおりです。

  • 最初の値:サービス注文は、それが属性やパラメータがspring.application.nameでbootstrap.ymlをapplication.yml構成されたアプリケーションの名前を記録します。
  • 第二の値:リンク要求を識別するために使用されるトレースIDと呼ばれるID、によって生成されたf410ab57afd5c145、春の雲スルース。トレースID、スパンIDを複数含むリンク要求。
  • 第3の値:a9f2118fa2019684は、春クラウドスルースは、さらに、HTTP要求を送信するように、ワークの基本単位を表すスパンIDと呼ばれるIDを、生成しました。
  • 第四の値:falseを収集して表示するZipkinや他のサービスにあなたが出力するかどうかの情報を示します。

トレースID及びスパンID上記の4つの値は、分散サービス追跡のコア春CloudSleuthの実装です。サービス・リクエスト・リンクを呼び出す過程で、そしてパスは異なるマイクロサービス追跡情報系列全体要求処理に配布される同じトレースID、残ります。同じフロントエンドサービス要求元に属する複数のサービスならば、それらは同じトレースID、同じリンクでの要求です。

・X-B3-TRACEID:固有の識別要求リンク(トレース)、必要な値。・X-B3-SpanId:(スパンの)作業単位に必要な値の一意の識別子。・X-B3-ParentSpanId:作業ユニットの作業の現在の単位が属する識別、ルートスパン(作業要求リンクの最初の単位)の値がヌルです。・X-B3は、サンプリング:フラグを出力する、1ニーズを出力をサンプリングしているかどうか、0手段が出力する必要はありません。・X-スパン名:作業単位の名前。

2)サンプルログ情報収集探偵

スルースサンプル収集戦略は、インタフェースサンプラーを介して実装され
、デフォルトで、スルースは、設定およびトレース情報を収集する方法の割合を要求するように実装さProbabilityBasedSamplerサンプリング戦略を使用します。そのセットのパーセント値をapplication.propertiesに我々はそれを回収追跡情報要求の10%を表し、0.1デフォルト、以下のパラメータを設定することができます。例えば、我々は設定で指定されました:

sleuth.sampler.probability:1


開発テスト中は、通常、リモートリポジトリにすべてのトレース情報を出力を収集し、我々はその値を1に設定することができます。

 

おすすめ

転載: www.cnblogs.com/756623607-zhang/p/11518683.html