2

Log4j を使用して Web アプリをログに記録しようとしています。すべてを正しく構成しました。それでもlog4jログファイルは生成されません。

log4j.properties ファイルを web-inf/classes に保持log4j.jarし、ビルド パスにも追加しました。

log4j.プロパティ:

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C\:\\loging.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Root logger option
log4j.rootLogger=error, file, stdout
4

1 に答える 1

0

おそらく正しい構成を作成したかもしれませんが、基礎となる環境がそれを使用しておらず、このフレームワークをロギングメカニズムとして使用していない場合は役に立ちません。Struts2 には、使用するロギング フレームワークの優先順位または設定もあります。この優先順位は、バージョンごとに変わる可能性があります。バージョン 2.3.12 から覚えている限り、優先度は slf4j に移動しました。commons-logging が優先される前は #1 でした。

問題を解決するには、slf4j ライブラリをデプロイしたかどうかを確認してから削除する必要があるため、commons-logging は引き続き有効なオプションですが、#2. を使用して log4j を使用するように commons-logging を構成することもできますcommons-logging.properties。デフォルトでは、log4j 構成が見つかった場合は log4j を使用します。

于 2013-11-15T12:51:38.080 に答える