Oracle Coherence - 2个日志文件

时间:2013-03-22 01:35:48

标签: java log4j oracle-coherence

我用Java创建了一个简单的应用程序,它在Coherence服务器上运行。 我在我的代码中使用log4j,当我在服务器中部署它时,我想要有两个日志文件。

第一个日志文件将包含我代码中的所有日志消息。 第二个长文件将包含所有与服务器相关的信息(服务器已启动,正在进行操作,以及已停止的一致性服务器)

我有2个不同的属性文件,在我的tangosol-coherence-override.xml中,在标签

<logging-config>
<destination>log4j</destination>
<severity-level>3</severity-level>
<message-format>{date} Oracle Coherence {version} {level} (thread=null, member={member}): {text} </message-format>
<character-limit>10000</character-limit>
</logging-config>

我的客户端日志的log4j属性文件是

[coherence@coherence01 config]$ cat log4j.properties
# Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE

# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=${user.home}/log/cachelog.log

log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{DATE} [%t] %5p %c{1}:%L - %m%n

服务器日志

[coherence@coherence01 addons]$ cat log4j.properties
log4j.logger.Coherence=INFO, file

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%m%n

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/home/coherence/log/coherence-${pid}.log
log4j.appender.file.threshold=DEBUG
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=5
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%m%n

如何分隔日志?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下方法

    log4j.category.com.first.log=debug, A1
    log4j.category.com.second.log=debug, A2

    log4j.appender.A1=org.apache.log4j.RollingFileAppender
    log4j.appender.A1.File=${log4j.file.home}/first.log
    log4j.appender.A1.MaxFileSize=10000KB
    log4j.appender.A1.MaxBackupIndex=10
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS} - %m%n 

    log4j.appender.A2=org.apache.log4j.RollingFileAppender
    log4j.appender.A2.File=${log4j.file.home}/second.log
    log4j.appender.A2.MaxFileSize=10000KB
    log4j.appender.A2.MaxBackupIndex=10
    log4j.appender.A2.layout=org.apache.log4j.PatternLayout
    log4j.appender.A2.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS} - %m%n

    // In Java use the logger as below
    private static Logger  firstLogger  = Logger.getLogger("com.first.log");
    private static Logger  secondLogger  = Logger.getLogger("com.second.log");