将速度记录更改为控制台

我正在尝试将速度与现有的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是否正在使用目标文件。