Tomcat捕获到所有日志条目

时间:2018-08-13 20:43:46

标签: tomcat logging tomcat8

我试图从部署到单个Tomcat实例的所有Web应用程序中捕获日志条目,并在它们进入时对其进行处理。我需要能够利用并捕获发送到控制台或catalina.out的所有条目。我尝试将自定义处理程序添加到Tomcat_catalina_folder / conf / logging.properties,但没有捕获我的日志。

handlers = 1catalina.org.apache.juli.AsyncFileHandler, 
2localhost.org.apache.juli.AsyncFileHandler, 
3manager.org.apache.juli.AsyncFileHandler, 4host- 
manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler, 
org.custom.CustomLoggerHandler

.handlers = 1catalina.org.apache.juli.AsyncFileHandler, 
java.util.logging.ConsoleHandler, org.custom.CustomLoggerHandler

请注意添加“ org.custom.CustomLoggerHandler”

public class CustomLoggerHandler extends Handler {
  @Override
  public void publish(final LogRecord record) {
  //this method is never triggered
 }
}

我将其部署在Tomcat / lib文件夹中。我还尝试修改setinv.sh以将我的班级添加到班级路径

这可能使事情复杂化,因为我需要访问一个数据资源(数据库)来编写日志条目。在我看来,当我收到指示错误的消息时,Tomcat库jar无法获取上下文资源。

执行此操作的正确方法是什么?我做错了什么?如果有办法让Web应用程序捕获所有应用程序中的所有顶级错误,我也会考虑采用这种方法,但是还没有找到足够的有关如何检索全局/根Logger来向其添加处理程序的文档。

运行Tomcat 8.x

0 个答案:

没有答案