我是Servlet容器的新手,并已使用Tomcat 6.0.26创建了一个Web应用程序。我的代码中散布着“ TODO:日志”。我看到存在:
myServlet.getServletContext()。log()
它似乎写入了Tomcat’/ logs’目录中以’localhost’为前缀的文件。我不需要任何高级日志记录功能,但我希望至少有一个日期,时间,消息和堆栈跟踪。此外,我还创建了一些由各种servlet使用的类,这些类也需要日志记录功能。我是否需要将SevletContext注入这些类中以便它们可以登录?
看来Apache的log4j是一个流行的日志记录程序包,但是我不确定是否值得进行设置。
满足我的需求的推荐日志记录方式是什么?
除了上述BalusC提到的所有内容之外,在您的Java代码(servlets / beans / whatever)中,只需导入并初始化Logger
package my.app; import org.apache.log4j.Logger; private static Logger logger = Logger.getLogger("classname"); // use any string you want
然后,您可以在任何日志记录点记录各种级别,例如
if (logger.isDebugEnabled()) { logger.debug("Some log at this point"); } ... logger.info("Some info message here");
这些内容将显示在日志中,具体取决于您是否在log4j中设置了DEBUG或INFO。
看一下http://www.java2s.com/Code/Java/Language- Basics/Examplelog4jConfigurationFile.htm上的示例以及同一文章中的所有相关示例。