将速度记录更改为控制台
我正在尝试将速度与现有的log4j.xml配置集成,并且正在进行攻击。 我似乎无法使用控制台appender – 无论我尝试过什么,它都会发送到velocity.log
。
和java代码:
Velocity.setProperty( "runtime.log.logsystem.class", "org.apache.velocity.runtime.log.Log4JLogChute" );
有谁知道如何正常工作?
TIA
我通过添加以下属性来实现它:
Velocity.setProperty( "runtime.log.logsystem.log4j.logger", "foo" );
改变这个:
对此:
希望这有助于其他人。
编辑#1:
最后,可以通过添加以下属性来完成:
Velocity.setProperty( "runtime.log.logsystem.log4j.logger", "root" );
或者如果使用velocity.properties
runtime.log.logsystem.log4j.logger = root
然后我能够将我的log4j.xml文件更改回原来的样式,这有效地将记录的速度更改为默认的velocity.log到我的根记录器被配置的地方 – 一行……去图:)
不得不在调试中潜水,以便使用spring工作。
需要注意的是将overrideLogging
设置为false
。 这可以防止spring使用org.springframework.ui.velocity.CommonsLoggingLogSystem
覆盖速度记录器。
org.apache.velocity.runtime.log.Log4JLogChute velocity
您确定log4j.xml是log4j选择的日志配置文件吗? 类路径上的另一个JAR可能包含它自己的捆绑log4j配置文件。
使用-Dlog4j.debug
启动应用程序,让log4j发出有关从哪个文件加载配置的信息,以validation是否正在使用目标文件。