2017-01-30 5 views
0

私は、Java &で簡単なプログラムを持っているが、私は底に言及したコードで以下の出力を取得していますのlog4j.xmlGeneateカスタムログのlog4j.xml

を使用してカスタムログを生成します。

2017-01-30 23:23:03 DEBUG Log4jXmlConfigurationExample:13 - Log4j appender configuration is successful !! 
2017-01-30 23:23:03 INFO Log4jXmlConfigurationExample:15 - Info message ---------- > 
2017-01-30 23:23:03 ERROR Log4jXmlConfigurationExample:17 - Error message ------> 

ここで私は、「日時」「LOGTYPE」「JavafileName」「メッセージ」のような

を4列を取得今私がユーザIDとして5列目をしたいです。だから私は、出力ファイルは、「日時」「LOGTYPE」「JavafileName」「メッセージ」「カウンター」として5列を持っていることを期待してい

誰かが私がのlog4j.xmlでカスタム変更を行うことができますどのようにここに助けてもらえ

はいofcourseのカウンター動的に生成され、簡単なJavaプログラム

log4.xml

<appender name="file" class="org.apache.log4j.RollingFileAppender"> 
    <param name="append" value="false" /> 
    <param name="maxFileSize" value="10MB" /> 
    <param name="maxBackupIndex" value="10" /> 
    <param name="file" value="C:/Users/ADMIN/Desktop/Logs/my_logs.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="DEBUG" /> 
    <appender-ref ref="console" /> 
    <appender-ref ref="file" /> 
</root> 

Javaコード

public static int counter =1; 
public static void main(String[] args) { 
    DOMConfigurator.configure("log4j-config.xml"); 
    counter++; 
    logger.debug("Log4j appender configuration is successful !!"); 
    counter++;  
    logger.info("Info message ---------- >");  
    counter++; 
    logger.error("Error message ------>"); 
} 
になります

答えて

0

使用される変数(例: %d)が変換パターンに記載されています:https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html 私はユーザーIDが表示されません

+0

いいえ私はデフォルトのパラメーターとしてUserIDを印刷したいとは言いません...私はただ動的に生成される1つのパラメーターを印刷したいJavaプログラムで。カウンターの例を取る私はカウンターコードで質問を更新しました。 –

+0

次に、値をlogger.debug( "counter of value" + counter)として出力します。 – Dakoda

+0

しかし、私は生成されたログファイルで別の列としてそれをしたい。メッセージの組み合わせではありません。 –

関連する問題