0

ログ情報を出力するように休止状態のアプリケーションを構成しようとしています。log4j.properties を次のように構成しています。

{
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\sisco.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=INFO, file, stdout, debug


# Log everything. Good for troubleshooting
log4j.logger.org.hibernate=INFO

# Log all JDBC parameters
log4j.logger.org.hibernate.type=ALL

}

しかし、休止状態はこのファイルを読み取っていないと思います。なぜなら、このファイルに何を設定しても何も変わらず、それを削除したため、アプリケーションは正常に実行されたからです。

おそらく、プロジェクト内の他のいくつかのjarファイルにはlog4j.propertiesファイルが含まれている可能性があり、休止状態がそれを使用していると思います。意味はありますか?

誰にもアイデアはありますか?

ありがとう

4

2 に答える 2

1

このjarをクラスパスに追加する必要があります

slf4j-api-1.7.5.jar       // the slf4j API
slf4j-log4j12-1.7.5.jar   // log4j bindings for slf4j
log4j-1.2.17.jar          // log4j itself

それは私の仕事です、頑張ってください〜

于 2013-10-17T10:22:38.730 に答える
0

ファイルlog4j.xmlはファイルより優先度が高いlog4j.properties

例えば:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" 
                                     "log4j.dtd" >
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

    <!-- console -->
    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
        <param name="threshold" value="TRACE" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="conversionPattern"
                value="%d{yyyyMMdd-HHmmss.SSS} %-5p (%c.java:%L).%M - %m%n" />
        </layout>
    </appender>

    <!-- categories -->
    <category name="org.hibernate">
        <priority value="INFO" />
    </category>
    <category name="org.hibernate.type">
        <priority value="TRACE" />
    </category>

    <!-- root -->
    <root>
        <priority value="TRACE" />
        <appender-ref ref="STDOUT" />
    </root>
</log4j:configuration>

フレームワークのバージョン 1.2.12 以降、プロジェクトのフォルダー内の既定のパッケージに配置するだけで済みます。srclog4j が自動的にロードします。プログラムやその他の方法でロードする必要はありません。

于 2013-10-08T21:06:20.610 に答える