Tomcat 动态更改log4j日志级别,无需配置和监视

Tomcat 动态更改log4j日志级别,无需配置和监视,tomcat,log4j,Tomcat,Log4j,我知道,configureAndWatch是在tomcat应用程序中动态更改日志级别的一种简便方法。但是,除了这样做之外,还有其他方法可以通过配置tomcat来使用log4j进行日志记录吗 在apache中,它说 当您想要将Tomcat重新配置为使用ApacheLog4j进行自己的日志记录时,需要执行本节中描述的步骤。如果您只想在自己的web应用程序中使用log4j,则不需要这些步骤 但是我们不能使用相同的配置来记录应用程序日志吗?(我想,如果我把相关的JAR和属性文件放到lib文件夹中,那就行

我知道,
configureAndWatch
是在tomcat应用程序中动态更改日志级别的一种简便方法。但是,除了这样做之外,还有其他方法可以通过配置tomcat来使用
log4j
进行日志记录吗

在apache中,它说

当您想要将Tomcat重新配置为使用ApacheLog4j进行自己的日志记录时,需要执行本节中描述的步骤。如果您只想在自己的web应用程序中使用log4j,则不需要这些步骤


但是我们不能使用相同的配置来记录应用程序日志吗?(我想,如果我把相关的JAR和属性文件放到lib文件夹中,那就行了。但我还没能把它做好。)

您可以使用servlet以编程方式更改级别。e、 g:

String logLevel=request.getParameter(“level”);
Logger root=Logger.getRootLogger();
如果(“调试”。相等信号案例(级别)){
setLevel(Level.DEBUG);
}else if(“INFO”.equalsIgnoreCase(级别)){
root.setLevel(Level.INFO);
}否则,如果(“警告”。相等信号情况(级别)){
root.setLevel(Level.WARN);
}否则,如果(“错误”。相等信号情况(级别)){
root.setLevel(Level.ERROR);
}否则,如果(“致命”。等效信号情况(级别)){
root.setLevel(Level.FATAL);
}

谢谢你的回答,保罗。但是我想使用tomcat配置来完成,而不是通过编程来完成。我正在尝试Paul,我还不能正确地完成它。我的情况有些复杂。我正在使用liferay tomcat,我想使用DailRollingFileAppender。因此,这将是另一个单独的问题。但如果我能在这个问题上有一个明确的方向,我想我也能克服这些复杂问题。