2017-04-01 8 views
1

にファイルが、その書き込みに書いていません。 import org.slf4j.LoggerFactory;log4jは私がロガー</p> <p>輸入org.slf4j.LoggerのためのSLF4Jライブラリを使用していますLinuxベースのシステムでaritinga小さなアプリケーションだコンソール

ログはコンソールに表示されますが、ログファイルには追加されません。

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender"> 
    <param name="threshold" value="INFO" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="[%d{ABSOLUTE}][%-5p][%-10t]%m%n" /> 
    </layout> 
</appender> 






<!-- EXAMPLE logging setup NOTES: 1. files are written to "./logs/<filename>". 
    You must setup the environment so that ./logs is a symlink to the correct 
    location according to the EXAMPLE log standard. For example, "/opt/logs/". 
    If that's not possible, change the File setting in each appender appropriately. --> 

<appender name="EXAMPLE_AUDIT" class="org.apache.log4j.RollingFileAppender"> 
    <param name="threshold" value="INFO" /> 
    <param name="File" value="./logs/audit.log" /> 
    <param name="MaxFileSize" value="128MB" /> 
    <param name="MaxBackupIndex" value="20" /> 
    <layout class="com.rsg.ova.logging.log4j.EXAMPLELayout"> 
     <param name="ConversionPattern" value="EXAMPLE_AUDIT" /> 
    </layout> 
</appender> 

<appender name="EXAMPLE_METRIC" class="org.apache.log4j.RollingFileAppender"> 
    <param name="threshold" value="DEBUG" /> 
    <param name="File" value="./logs/metric.log" /> 
    <param name="MaxFileSize" value="128MB" /> 
    <param name="MaxBackupIndex" value="10" /> 
    <layout class="com.rsg.ova.logging.log4j.EXAMPLELayout"> 
     <param name="ConversionPattern" value="EXAMPLE_METRIC" /> 
    </layout> 
</appender> 

<appender name="EXAMPLE_ERROR" class="org.apache.log4j.RollingFileAppender"> 
    <param name="threshold" value="ERROR" /> <!-- only WARN and ERROR are allowed in this log --> 
    <param name="File" value="./logs/error.log" /> 
    <param name="MaxFileSize" value="128MB" /> 
    <param name="MaxBackupIndex" value="10" /> 
    <layout class="com.rsg.ova.logging.log4j.EXAMPLELayout"> 
     <param name="ConversionPattern" value="EXAMPLE_ERROR" /> 
    </layout> 
</appender> 

<appender name="EXAMPLE_DEBUG" class="org.apache.log4j.RollingFileAppender"> 
    <param name="threshold" value="DEBUG" /> 
    <param name="File" value="./logs/debug.log" /> 
    <param name="MaxFileSize" value="128MB" /> 
    <param name="MaxBackupIndex" value="20" /> 
    <layout class="com.rsg.ova.logging.log4j.EXAMPLELayout"> 
     <param name="ConversionPattern" value="EXAMPLE_DEBUG" /> 
    </layout> 
</appender> 


<logger name="com.rsg.EXAMPLE.audit" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_AUDIT" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.metrics" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_METRIC" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.error" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_ERROR" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.debug" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="CONSOLE" /> 
    <appender-ref ref="EXAMPLE_DEBUG" /> 
</logger> 


<root> 
    <level value="DEBUG" /> 
    <appender-ref ref="EXAMPLE_DEBUG" /> 
    <appender-ref ref="CONSOLE" /> 

</root> 

<logger name="org.openEXAMPLE.agcp.commonFunction.input" 
    additivity="false"> 
    <level value="INFO" /> 
    <appender-ref ref="CONSOLE" /> 
</logger> 

<logger name="org.openEXAMPLE.agcp.commonFunction.output" 
    additivity="false"> 
    <level value="INFO" /> 
    <appender-ref ref="CONSOLE" /> 

</logger> 

<logger name="org.openEXAMPLE.agcp.commonFunction.error" 
    additivity="false"> 
    <level value="DEBUG" /> 
    <appender-ref ref="CONSOLE" /> 
    <appender-ref ref="EXAMPLE_ERROR" /> 
</logger> 

<!-- The EXAMPLE logging standard has four specific classes of logging that 
    are unrelated to subsystem logger names. If you want them activated, uncomment 
    this block. --> 
<logger name="com.rsg.EXAMPLE.audit" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="CONSOLE" /> 
    <appender-ref ref="EXAMPLE_AUDIT" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.metrics" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_METRIC" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.error" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_ERROR" /> 
</logger> 

<logger name="com.rsg.EXAMPLE.debug" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_DEBUG" /> 
</logger> 


<logger name="com.rsg.ova.apiClient.http.HttpClient" additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_ERROR" /> 
    <appender-ref ref="CONSOLE" /> 
</logger> 

<logger name="com.rsg.ova.roman.client.impl.romanSimplerBatchPublisher" 
    additivity="false"> 
    <level value="info" /> 
    <appender-ref ref="EXAMPLE_ERROR" /> 
    <appender-ref ref="CONSOLE" /> 
</logger> 

答えて

0

上記の問題を解決するためにsl4j-log4jブリッジjarを含める必要があることが判明しました。これはlog4jとsl4jの個々のjarを含んでいました。これはコンパイルエラーは見えませんがブリッジは実現しません。

個々のジャーを取り外してブリッジジャーを追加した後、問題は解決されました。

0

私はあなたのlogback.xmlのファイル構成をチェックしています。ルートタグ( "configuration")が見つからないようです。それを追加して確認できますか?

https://logback.qos.ch/manual/configuration.html

+0

試したことがありますが、運が無かった – Kiran

+0

さらにもう1つ試してみると、log4j.xmlの代わりにlog4j.propertiesを使用してください。あなたが望むなら私はあなたに特性ファイルを提供することができます。 –

+0

プロジェクトの必要条件としてlog4j2.xmlを使用する必要があります – Kiran

0

を参照してくださいあなたのxmlファイル内のルートタグを逃したようです。ログをファイルに書き込むには、以下のコードを見つけてください。

<appender name="file" class="org.apache.log4j.RollingFileAppender"> 
    <param name="append" value="false" /> 
    <param name="maxFileSize" value="128MB" /> 
    <param name="maxBackupIndex" value="20" /> 
    <param name="file" value="./logs/audit.log" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n" /> 
    </layout> 
</appender> 

<root> 
    <level value="INFO" /> 
    <appender-ref ref="file" /> 
</root> 
+0

は、以下などのルートタグを追加し、ない運
<レベル値= "DEBUG" /> <アペンダ-REF REF = "EXAMPLE_DEBUG" /> <アペンダ-REF REF = "EXAMPLE_METRIC" /ています> <アペンダ-REF REF = "EXAMPLE_AUDIT" /> <アペンダ-REF REF = "EXAMPLE_ERROR" /> <アペンダ-REF REF = "FILE" /> Kiran

0

質問に表示される構成はlog4j 1.2形式です。

log4j2.xmlの形式が異なります。これはプラグインベースなので、アペンダのクラス名をこれ以上指定する必要はありません。

Log4j2 manualを参照してください。これには多くの設定例があります。

関連する問題

 関連する問題