-1

単純な jsf Web アプリケーションから log4j を使用してテキスト ファイルにログを記録しようとしましたが、成功しませんでした。その場所でファイルを開くたびに、何も書き込まれませんでした。私はグラスフィッシュで展開しています。以下は私のlog4j.properties構成です

log4j.rootLogger = debug, stdout, FILE

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

log4j.appender.FILE = org.apache.log4j.RollingFileAppender
log4j.appender.FILE.maxFileSize = 100kb
log4j.appender.FILE.maxBackupIndex = 2
log4j.appender.FILE.File = C:\temp\mylog.txt
log4j.appender.FILE.Threshold = debug
log4j.appender.FILE.layout = org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%n

ファイル mylog.txt が Glassfish アプリケーション サーバーの ....\domains\domain1 ディレクトリに作成されることを認識しています。C:\temp\mylog.txt に直接送信するにはどうすればよいですか

4

1 に答える 1

0

直りました。実際、ファイルの場所の行区切り文字は間違った方向「\」バックスラッシュであり、log4j は「/」行区切り文字を予期していました。おそらく、URL パターンのファイルの場所アドレスが必要なためです。

だから私はちょうど C:\temp\mylog.txt を C:/temp/mylog.txt に変更し、ほら! これは、log4j が対象とする他のファイルの場所にも適用されます

于 2012-09-30T08:08:22.093 に答える