我根据spring引导参考文档启用了tomcat访问日志。但它不能正常工作。当我启用它时,创建了访问日志文件,我可以看到那天记录的请求。但是在第二天开始时我没有看到任何新文件。它开始记录21小时。第二天它从02hrs开始登录。从第4天开始,没有创建访问日志。
以下是我使用的属性。
server.tomcat.access-log-enabled=true
server.tomcat.access-log-pattern=%h %l %u %t "%r" %s %b %D
server.tomcat.basedir=/var/lib/org_name/tracking_server
在tracking_server文件夹下创建日志和工作文件夹。
如果我遗失了什么,请告诉我。根据logback.xml
中指定的配置,常规日志记录完美运行提前感谢您的帮助。
答案 0 :(得分:16)
该配置适用于春季启动版本1.2.3.RELEASE。但是,如果你有当前版本的spring boot,那些参数会略有不同,reference here:
server.tomcat.accesslog.directory=logs # Directory in which log files are created. Can be relative to the tomcat base dir or absolute.
server.tomcat.accesslog.enabled=false # Enable access log.
server.tomcat.accesslog.pattern=common # Format pattern for access logs.
正如您所注意到的,区别在于连字符( - )。
此外,根据this document:
,tomcat访问日志配置包括以下参数但是,在我的spring boot(1.2.3.RELEASE)版本中,类org.springframework.boot.autoconfigure.web.ServerProperties没有值来更改这些属性(Tomcat子类)。但是如果你检查org.apache.catalina.valves.AccessLogValve你可以改变这个属性:
/**
* Should we rotate our log file? Default is true (like old behavior)
*/
protected boolean rotatable = true;
/**
* Date format to place in log file name.
*/
protected String fileDateFormat = ".yyyy-MM-dd";
我知道也许你应该玩这些参数。我希望这篇文章有助于解决您的问题。