最初に-はい、私はこのトピックに関する複数の質問と回答を読みましたが、それらの中で私を助ける解決策を得ることができません。 TomcatまたはJBossを実行しておらず、変更するweb.xml
ファイルがありません。 Java 6.0およびlog4j-1.2.8.jar
を使用しています。
IDEA IntelliJで実行可能なjarファイルを作成します。jarファイルは個別にパッケージ化され、マニフェスト経由でリンクされています。 Linuxサーバーでコードを実行しています:
me@server:/mydir> Java -jar code/myjar.jar
log4j:WARN No appenders could be found for logger (FactoredEventsForTrna).
log4j:WARN Please initialize the log4j system properly.
私のlog4j設定ファイル(念のため、mydir
とmydir/code
の両方に配置しました)は次のとおりです。
## Logger configure file for myproject
log.dir=log/
datestamp=yyyy-MM-dd/HH:mm:ss.SSS
log4j.rootLogger=TRACE, file, proappender, console
log4j.appender.file=org.Apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=1GB
log4j.appender.file.maxBackupIndex=5
log4j.appender.file.File=log/mydebug.log
log4j.appender.file.threshold=TRACE
log4j.appender.file.layout=org.Apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
log4j.appender.proappender=org.Apache.log4j.RollingFileAppender
log4j.appender.proappender.maxFileSize=5GB
log4j.appender.proappender.Threshold=INFO
log4j.appender.proappender.File=log/myinfo.log
log4j.appender.proappender.layout=org.Apache.log4j.PatternLayout
log4j.appender.proappender.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
log4j.appender.console=org.Apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=DEBUG
log4j.appender.console.layout=org.Apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
また、念のため、mydir
およびlog/
にmydir/code
ディレクトリを作成しました。
何か案は?
Log4j構成を指定するための多くの可能なオプションがあります。 1つは、ファイルに「log4j.properties」という名前を付けてクラスパスに含めることです。別の方法は、次のように、Javaを起動するときに、必要な名前を付けてコマンドラインにシステムプロパティを追加することです。
-Dlog4j.configuration=file:///path/to/your/log4j.properties
それらのすべての概要はここにあります http://logging.Apache.org/log4j/1.2/manual.html#defaultInit
log4j.jar
ファイルlog4j.jar
ファイルをビルドパスに追加しますロガーを呼び出す:
private static org.Apache.log4j.Logger log
= Logger.getLogger(<class-where-this-is-used>.class);
log4jプロパティが存在しない場合は、bin4ディレクトリに新しいファイルlog4j.propertiesファイルを作成します。
/workspace/projectdirectory/bin/
log4j.rootLogger=debug, 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=%t %-5p %c{2} - %m%n
私はlog4j.propertiesをresourcesフォルダーに移動しましたが、うまくいきました!
男、私はEclipseプロジェクトの1つで問題を抱えていました。驚くべきことに、問題は.projectファイル内のjarの順序でした。信じようと信じまいと!
De log4j.properties in solr/examples/resourcesにあります。
ファイルが見つからない場合は、ここに置きます:
# Logging level
solr.log=logs/
log4j.rootLogger=INFO, file, CONSOLE
log4j.appender.CONSOLE=org.Apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.Apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x \u2013 %m%n
#- size rotation with log cleanup.
log4j.appender.file=org.Apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=4MB
log4j.appender.file.MaxBackupIndex=9
#- File to log to and log format
log4j.appender.file.File=${solr.log}/solr.log
log4j.appender.file.layout=org.Apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n
log4j.logger.org.Apache.zookeeper=WARN
log4j.logger.org.Apache.hadoop=WARN
# set to INFO to enable infostream log messages
log4j.logger.org.Apache.solr.update.LoggingInfoStream=OFF
よろしく
Log4j.propertiesファイルをsrcフォルダーに移動します。 Windowsエクスプローラを開き、プロジェクトが存在するディレクトリを参照します。binディレクトリを参照し、その中のfoldersをすべて削除します。
Eclipseでプロジェクトをクリックします----> clean ----> OK
これにより、プロジェクトが再度ビルドされ、binディレクトリから削除されたすべてのコンテンツが再作成されます。
これを理解するのに時間がかかりました。時々、直接クリーニングをクリックしても機能しない
Javaビルドパスソースにログイン用のプロパティファイルがあるフォルダーを配置します。プロジェクトを右クリックして追加できます---->ビルドパス----->ビルドパスの構成------> add t