1

Log4j用来打印日志。它成功地在spring控制台上打印了日志,但我需要检查它是如何打印它们的catalina。通常在服务器上我们写这个tail -f /var/log/tomcat8/catalina.out,但是如何在本地机器上查看这个。

这就是我正在做的打印日志

logger.info("Log4J - "+ "Request: " + 
                ",URL= "+ httprequest.getRequestURI()+
                ",requestId= "+ uniqueID+  ",Headers= "+ map);

请指导我如何以及在哪里检查catalina日志。

我试图Tomcat8.5从 cmd 运行服务器。它启动服务器,并将一些日志放在tomcat/logs文件夹中,但与应用程序无关。当我从浏览器打开服务时,它不会在日志中添加任何内容。

这是它写的catalina.2017-03-19

2017 年 3 月 19 日 21:08:38.766 信息 [主] org.apache.coyote.AbstractProtocol.start 启动协议处理程序 [http-nio-8080] 2017 年 3 月 19 日 21:08:38.771 信息 [主] org.apache。 coyote.AbstractProtocol.start 启动 ProtocolHandler [ajp-nio-8009] 19-Mar-2017 21:08:38.772 INFO [main] org.apache.catalina.startup.Catalina.start 服务器在 1092 毫秒内启动

编辑

这是我的属性文件,它打印此处提到的文件中的日志。C:\\log\\logging.log

# Root logger option
log4j.rootLogger=INFO, stdout, file

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


# Redirecting to Tomcat Logger

log4j.appender.file.File=${catalina.home}logs/logging.log


# Redirect log messages to a log file, support file rolling.

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\log\\logging.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
4

1 回答 1

1

检查应用程序日志。logging.properties 文件以获取更多详细信息。

如果未配置应用程序日志,则在 catalina.out 中记录写入输出。

您的 logging.properties 文件在哪里?它应该在类路径的根目录中可用。作为健全性检查,以下代码打印了什么?

System.out.println(getClass().getClassLoader().getResource("logging.properties"));

如果代码在静态上下文中,请使用

System.out.println(ClassName.class.getClassLoader().getResource("logging.properties"));
于 2017-03-19T16:16:59.517 回答