4

想象一下,我想创建几个基本上具有相同配置的记录器,除了 1-2 个属性。是否可以“继承”记录器配置,然后只覆盖单个特定属性?

log4j.appender.FirstFileAppender=org.apache.log4j.FileAppender
log4j.appender.FirstFileAppender.encoding=ISO-8859-1
log4j.appender.FirstFileAppender.encoding=UTF-8
log4j.appender.FirstFileAppender.maxBackupIndex = 5
log4j.appender.FirstFileAppender.maxFileSize = 128MB
log4j.appender.FirstFileAppender.Append=true
log4j.appender.FirstFileAppender.Threshold=INFO
log4j.appender.FirstFileAppender.File=c:/log.txt
log4j.appender.FirstFileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.FirstFileAppender.layout.ConversionPattern = [%X{uuid}] %d %p %c: %m%n

//looking for something like this
log4j.appender.SecondFileAppender=FirstFileAppender
log4j.appender.SecondFileAppender.maxFileSize = 500MB
4

1 回答 1

0

您可以实现 org.apache.log4j.PropertyConfigurator 的子类,它将基本配置文件读入 Properties 对象,然后覆盖一些属性,可能使用来自另一个文件的属性,然后将 Properties 对象传递给 PropertyConfigurator.configure(Properties properties)

于 2013-11-12T10:39:45.413 回答