プロジェクトでエラーが発生した場合に備えて、メールを送信しようとしています。このために、Log4j のSMTPAppender
. プロジェクトを開発モードで実行しており、以下を使用してエラーの完全なスタック トレースを取得しようとしていConversionPattern
ますSMTPAppender
。
<param name="ConversionPattern"
value="[%d{ISO8601}] [%t] [%5p] [%c ] %n %m %l %X{config}"/>
次のようにエラーをスローしています。
try {
throw new Exception(" To get the MDC values !!!");
} catch (Exception e)
{
LOGGER.error(" To get the MDC values !!!", e);
}
%m
はテキストに置き換えられますTo get the MDC values !!!
が、%l
(小文字L
) は、ロギング要求を発行する呼び出し元の完全修飾クラス名を行番号とともに出力しています (%c と同様に、%c は行番号を出力しないのに対し、%l は行番号を出力しないという 1 つの違いがあります)。 )。
スタック トレースを取得する正しい方法は何%l
ですか? また、スタック トレース全体を取得できないのはなぜですか?