我需要使用自定义过滤器,因此我需要将一些长log4j.properties文件转换为log4j.xml。
是否有人知道这样做的工具,或者愿意贡献他们使用过的工具?到目前为止,搜索没有找到这样的工具。
答案 0 :(得分:20)
我也需要这样做,但找不到工具。手动迁移数十个log4j.properties并不是一个可口的选择。所以,我把一个可以做到这一点的工具混合在一起并将其发布给其他人使用。
http://code.google.com/p/log4j-properties-converter/
它有点粗糙,但我为它提供了log4j属性的技巧,所以任何问题都会在问题跟踪器上记录它们。希望你觉得它很有用。
答案 1 :(得分:4)
这是可以帮助你的东西。 log4j的创建者CekiGülcü启动了另一个名为logback的记录器项目,他为log4j.properties文件提供online translator到xml配置文件以进行回溯。看起来log4j.xml和logback.xml的配置文件模式非常接近。
至少应该生成一些可以很容易地转换为log4j.xml格式的东西。
为方便起见:这是log4j文档中的示例log4j.properties文件。只需将其粘贴到翻译器中并检查输出:
log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
答案 2 :(得分:0)
据推测,您必须拥有许多需要转换的属性文件。当我想切换到xml(多年前)时,我找不到太多文档。我确实在log4j发行版中找到了非常有用的样本xml文件。
答案 3 :(得分:0)
最近使用https://github.com/balent/Log4j-Convert-Configuration将log4j.xml文件转换为log4j.properties文件(我必须使用的一个古老的jar明确地查找log4j.properties)。该配置允许两种方式:从xml到属性或从属性到xml。
从https://github.com/balent/Log4j-Convert-Configuration/blob/master/binaries/full-with-dependencies/log4j-convert-full.jar下载二进制版本,然后键入:
java -jar log4j-convert-full.jar -i log4j.properties -o log4j.xml
把它留在这里,以备将来我发现。