2016-06-29 8 views
0

java appではlogback classicを使用していますが、%Mまたは%メソッドは '?'メソッド名の代わりに。誰もがアイデアを持っている?ここlogbackは印刷方法名ではありません

%d{yyyy-MM-dd HH:mm:ss.SSS} %level %thread %mdc{X-CorrelationId} %logger %method - %msg%n 

答えて

1

logbackではなく、メソッド名のみmethod name could not be determined?を放出するパターンです。これが非本番アプリだとすると、メソッド名のデバッグシンボルが%mに表示されるようにしてください。

+0

私は-gを構築しようとしたがうまくいきませんでしたに次の行を追加します。しかし、私がincludeCallerDataをtrueに設定した場合、メソッド名を見ることができますが、これは広範な検索の後でしかありません。それが本当に必要かどうかわからない –

0

あなたはSMTPアペンダまたはASYNCアペンダを使用している場合は、その程度"includeCallerData"プロパティを知っている必要があります。呼び出し元データの取得には非常にコストがかかるため、このプロパティはfalseに設定されます。したがって、行番号やメソッド名のようなものは、デフォルトでは取り出されません。
あなたのケースではメソッド名はCallerData.NAに置き換えられます。これは基本的にですか?

だから、あなたのlogback.xml

<includeCallerData>真</includeCallerData >

関連する問題