1

log4cxxパターン%lは、ソースファイル名とそのパスをログに出力するため、絶対パスを使用してコンパイルすると、ソースファイルが深いディレクトリにある場合に読み取りが困難になります。

2012-11-20 15:59:14,184 0x7f7ae90e27c0 TRACE fogs.common (/home/jw/fogs/d_common/net/inc/amf3conn.hpp:158) - Entering setCallbackObjBuffer

amf3conn.hpp:158ログ行を短くするために、ログにのみ出力する方法はありますか?

4

1 に答える 1

2

私はこれがすぐに可能であるとは思いません。APIドキュメントによると、またはのいずれ%lかを使用できます%F%F、行番号のみを破棄し、パスを出力します。

2つの選択肢があります。

  • 位置変換の独自の処理をサブクラスPatternLayout化して実装し、パスを破棄してファイル名のみを使用します
  • または、長さ修飾子を使用して、場所の最大長を設定します。これは、あなたの場合のよう%.20linc/amf3conn.hpp:158なります。最長のソースファイル名の長さを選択すると、どのような場合でも完全なファイル名が取得されます(パスの一部が前に付く可能性があります)
于 2012-11-20T08:35:10.600 に答える