1

同様の投稿を見てきましたが、log4j の水域をナビゲートするのに問題があります。ログから作成された実際のファイルを確認するには、どこに行く必要があるのか​​ 疑問に思っています。プロジェクトの依存関係として正しい JAR ファイルを正常に追加しました (IDEA 12 を使用しています)。次のようなロガーをインポートしてセットアップしました。

import org.apache.log4j.Logger;

private static Logger logger = Logger.getLogger(ClassDAO.class.getName());

そして、後で次のように使用します。

//Log the search
logger.info("Request successful. Size of result set: " + resultSet.size());

また、次のようにプロパティファイルを設定しました(別の投稿のアドバイスに従って):

# Set root logger level and appender name.
log4j.rootLogger = INFO, file

# Specify appenders.
log4j.appender.console = org.apache.log4j.ConsoleAppender
log4j.appender.file = org.apache.log4j.DailyRollingFileAppender

# Configure console appender.
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern = %d{ABSOLUTE} [%t] %-5p %m%n

# Configure file appender.
log4j.appender.file.File = /ClassMonitor/logs/web.log
log4j.appender.file.DatePattern = '.'yyyy-MM-dd
log4j.appender.file.layout = org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern = %d{ABSOLUTE} [%t] %-5p %m%n

もともと持っていた

log4j.appender.file.File = /webapp/logs.web.log

しかし、それが私のためにすでに設定されている実際のファイルパスである場合のプロジェクト名であると想定されている場合、それが暗示されているかどうかはわかりませんでした。

どんな助けでも感謝します。

4

1 に答える 1

1

これは非常に難しい質問です。実際に使用されているログ ファイルは、実行時およびインスタンス化時に使用しているフレームワークの順序によって異なります。

つまり、Log4j または slf4j でさえ、ランタイムの任意の部分で apache-log4j-handler をオーバーライドできます。

私は恐れています:あなたはその問題のために試行錯誤しなければなりません.

于 2013-02-28T23:22:54.947 に答える