2017-10-17 16 views
0

を書いていないことは以下の私のlog4j設定log4jのログ

#log4j.additivity.org.apache.qpid=false 

log4j.rootLogger=DEBUG, console 
log4j.appender.console=org.apache.log4j.ConsoleAppender 
log4j.appender.console.layout=org.apache.log4j.PatternLayout 
log4j.appender.console.threshold=DEBUG 
log4j.appender.console.layout.ConversionPattern=%-7p %d [%t] %c %x - %m%n 

log4j.logger.javax.jms=DEBUG 
log4j.logger.org.apache.qpid=DEBUG 
log4j.logger.org.apache.qpid.amqp_1_0=DEBUG 
log4j.logger.org.apache.qpid.amqp_1_0.jms=DEBUG 

、その後のコードである

String log4jConfigFile = System.getProperty("user.dir") + File.separator + "log4j.properties"; 
    PropertyConfigurator.configure(log4jConfigFile); 
    logger.debug("this is a debug log message"); 

私のデバッグメッセージthis is a debug log message行う印刷けどorg.apache.qpidからのログメッセージが取得されていませんを取得しますコンソールに印刷

<dependency> 
     <groupId>org.apache.qpid</groupId> 
     <artifactId>qpid-amqp-1-0-client-jms</artifactId> 
     <version>0.22</version> 
    </dependency> 

EDIT 私はJavaの初心者です...私が追加したロギングの依存関係。 sl4jのログをlog4jにリダイレクトする設定をいくつか追加する必要がありますか?

<slf4j-version>1.6.6</slf4j-version> 
    <log4j-version>1.2.17</log4j-version> 

    <!-- Logging --> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>${slf4j-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-log4j12</artifactId> 
     <version>${slf4j-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>${log4j-version}</version> 
    </dependency> 
+0

私は、Apacheのorg.apache.qpidがロギングにslf4jを使用していると確信していますが、__slf4jバインダー__を実装してlog4jを使用するように設定してもらえますか?あなたはlog4j-slf4j-impl-2.0.jar jarのexampesを追加しようとしましたか? – gtosto

+0

@gtostoが編集に必要な詳細を追加しました。また、私は初心者ですので、sl4jをlog4j –

+0

にリダイレクトするための設定が必要ですか?もっと最近のバージョンのqpidを使用することをお勧めします。 slf4jに依存するクライアント。そうでなければ、@ rob-godfreyのように組み込みのJavaロギングフレームワークを設定する必要があります。彼の答えを見てください。 – gtosto

答えて

0

(非推奨)qpid-amqp-1-0-client-jmsクライアントは、log4jのjava.util.loggingを使用して、ではありません。

あなたが何かに見えるファイルを指すようにJavaシステムプロパティ java.util.logging.config.fileを設定することで、それをオンにすることができ :私は[email protected]メーリングリストに2014年に送り返さmailから引用するとこのような:

handlers=java.util.logging.FileHandler FRM.level=ALL 
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter 
java.util.logging.SimpleFormatter.format=[%1$tc] %4$s: %5$s%n 

java.util.logging.FileHandler.level=ALL` 

# (The output file is placed in the directory 
# defined by the "user.home" System property.) 
java.util.logging.FileHandler.pattern=%h/qpid-jms-%u.log` 

それは、ファイルを生成する必要があり、クライアントを実行するときのようなもの な出力で、あなたのホームディレクトリに qpid-JMS-0.log呼ば:

をこの古いクライアントでのロギングは本当に最小限で、理想的にはあなたの代わりにSLF4Jを使用したAMQP 1.0 https://qpid.apache.org/components/jms/index.htmlのためにサポートQpid JMSクライアントにコードを移行する必要がありますが、接続およびキューの異なる設定構文を使用していること
[Mon Feb 24 18:45:58 CET 2014] FINE: RECV[/127.0.0.1:5672|0] : 
SaslMechanisms{saslServerMechanisms=[ANONYMOUS]} 

注意。

関連する問題