最简单的方法来登录tomcat catalina.out

将日志写入tomcat/catalina.out的最简单方法是什么? 我试过System.out.print()System.err.print()工作正常。

我只是想知道是否有更好的选项可以使用尽管sysoutsyserr

你的记录

对于您自己的日志记录(由您自己的servlet代码生成的日志记录项), Simple Logging Facade for Java(SLF4J)是现代方法。 此接口充当外观 ,可与多个可插入实现中的任何一个一起使用。 这些实现包括与Java,log4j,Logback等捆绑在一起的java.util.logging工具。

Logback是你应该看的。 由多年前创建着名的log​​4j的人创建。 Logback是log4j的后续版本。 同一个人还创建了SLF4J,以防止您被锁定到任何一个日志记录框架。

您的servlet代码↔SLF4J↔Logback↔logs

您可以通过多种方式配置LogBack以满足您的需求。 您可以写入文本文件,将日志记录项发送到数据库等。

Tomcat的记录

除了您自己的日志记录之外,还有Tomcat本身执行日志记录的问题,以跟踪每个传入的请求。

Tomcat通过Valve执行此类日志记录。 默认情况下,这些日志记录项只是写入文本文件。 你可能想要做更多的事情。

Logback提供了一个额外的模块, logback-access,用于来自Eclipse的Apache和Jetty的servlet容器Tomcat 。 模块logback-access是Tomcat的Valve的扩展。 通过扩展Valve,您可以替换默认行为。 您可以将Tomcat自己的日志记录项发送到Logback基础结构(文件,数据库记录等)。

 import java.util.logging.* Logger.getLogger (YourClass.class.getName()).log(Level.WARNING, e.getMessage(), e); Logger.getLogger (YourClass.class.getName()).log(Level.INFO, "hello world");