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

tok*_*khi 6 java logging tomcat servlets

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

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

use*_*497 5

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");
Run Code Online (Sandbox Code Playgroud)

  • 这将在哪里打印? (2认同)
  • 你真的应该说这些消息会被打印在哪里。 (2认同)

Bas*_*que 5

你的记录

对于您自己的日志记录(由您自己的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.该模块是Tomcat Valve的扩展.通过扩展Valve,您可以替换默认行为.您可以将Tomcat自己的日志记录项发送到Logback基础结构(文件,数据库记录等).logback-access