2017-07-05 6 views
0

logbackのエンコーダパターンは以下

<encoder> 
      <pattern>%d{yyyy.MM.dd HH:mm:ss} | %-5level | [%thread] | \(%class{25}:%line\) - %msg%n</pattern> 
</encoder> 

例えば、私の現在のlogbackのエンコーダパターンです: 2017年6月5日午前11時15分21秒| DEBUG | [スレッド10] | (c.s.n.f.s.m.NmsngMessagingImpl:450) - コントロールは、Javaクラスで)(

を送信達し以下に示すように、ロガーの例は

logger.info(messRecv + "要求メッセージを受信")、です。

上記のパターンは、表示されている例でうまく機能します。

今は以下に示すようにシステムID、

[タイムスタンプ] [ログレベル] [SYSTEMID] [パッケージ] [クラス] [方法] [ID]メッセージ

を他の実施例を有し、idはカスタム値である新しいエントリです。

私はロガーを通す方法を知っているかもしれません。

+0

ここでお手伝いできますか –

答えて

0

あなたがMDCにそれらを追加することができます

MDC.put("systemId", "value"); 
MDC.put("id", "value2"); 

MDC(マッピングされた診断コンテキスト)は、スレッドごとに管理されているキーと値のペアのマップです。

あなたのパターンは次のようになりますので、彼らは、%のX {mdcName}経由の構成で参照することができます。

<pattern>%d{yyyy.MM.dd HH:mm:ss} | %-5level | %X{systemId} ... %msg%n</pattern> 

%のX {システムIDは}に「システムID」のためのスレッドの値に置き換えられますMDC。