2016-07-06 7 views
0

私のアプリケーションにログインするためにlog4j2を使用しています。基本的には、サービス層(journal.log; journalJSON.log)で、キャッチされていない例外(Error.log)と自分のデータの変更を記録しています。テストしない限りログが作成されません

サービスレイヤテストを開始すると、すべてのログがファイルとコンソールに表示されますが、私がtomcatにデプロイされたアプリケーションを使用しているときは、コンソールにしかありません。何が起こっていますか?

<?xml version="1.0" encoding="UTF-8"?> 
<configuration status="WARN"> 
<appenders> 
    <Console name="Console" target="SYSTEM_OUT"> 
     <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> 
    </Console> 


    <File name="Error" fileName="logs/error.log" 
      immediateFlush="true" append="true"> 
     <PatternLayout pattern=" \n\n %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> 
    </File> 

    <RandomAccessFile name="Journal" fileName="logs/journal.log" immediateFlush="true" append="true"> 
     <PatternLayout pattern="[%d{yyyy-MM-dd HH:mm:ss.SSS}] %msg%n"/> 
    </RandomAccessFile> 

    <File name="JournalJSON" fileName="logs/journalJSON.log" immediateFlush="true" append="false"> 
     <JSONLayout complete="true" charset="UTF-8" compact="false" eventEol="false"/> 
    </File> 

</appenders> 

<Loggers> 

    <Logger name="com.user.controller" level="error" additivity="false"> 
     <AppenderRef ref="Error" level="error"/> 
     <AppenderRef ref="Console" level="error"/> 
    </Logger> 

    <Logger name="com.user.service" level="info" additivity="false"> 
     <appender-ref ref="JournalJSON" level="info"/> 
     <appender-ref ref="Journal" level="info"/> 
     <appender-ref ref="Console" level="info"/> 
    </Logger> 

    <Root level="warn"> 
     <AppenderRef ref="Console"/> 
    </Root> 
</Loggers> 

答えて

1

まあ、私は考えることができる可能性がいくつかあります:

  1. あなたの設定ファイルが発見されていないと、それはデフォルトの設定を使用しているが。
  2. アプリケーションのロガーはcom.user.controllerまたはcom.user.serviceではなく、ルート・ロガーが使用されています。
関連する問題