如何 link catalina.out 文件嵌入 tomcat
how to link catalina.out file with embedded tomcat
我偶然发现了这个看似微不足道的问题,但我不知道应该从哪一方面来处理它。
我打包了一个 jar spring 引导应用程序并将其放在我的 CentOs 服务器上,并使用启动脚本将其作为 Systemd 服务启动。问题是这样的:我如何告诉嵌入式 tomcat 指向我在某处创建的他的特定 catalina.out 文件并在那里写入日志。我一直在思考两个方向。一种是以编程方式告诉嵌入式 tomcat catalina.out 来自我实例化连接器等的代码,第二种是告诉 systemd 脚本 catalina.out 所在的位置。但是我在网上找不到关于这个问题的任何信息。
编辑
我的嵌入式 tomcat 当前配置
@Bean
EmbeddedServletContainerCustomizer containerCustomizer() throws Exception {
System.out.println("TOMCAT CALLED");
return (ConfigurableEmbeddedServletContainer container) -> {
if (container instanceof TomcatEmbeddedServletContainerFactory) {
TomcatEmbeddedServletContainerFactory tomcat = (TomcatEmbeddedServletContainerFactory) container;
tomcat.addConnectorCustomizers(
(connector) -> {
connector.setPort(9595);
connector.setRedirectPort(9444);
connector.setAttribute("address", "127.0.0.1");
//connector.setPr
Http11NioProtocol proto = (Http11NioProtocol) connector.getProtocolHandler();
proto.setConnectionTimeout(20000);
System.out.println("apr available: "+AprLifecycleListener.isAprAvailable());
}
);
}
};
}
如有任何帮助,我们将不胜感激!谢谢
如 Tomcat Logging documentation 中所述,您可以将 conf/logging.properties
文件配置为在您需要的任何位置记录。对于您的情况,请查看 1catalina.org.apache.juli.FileHandler.directory
属性.
只需在 application.properties
中设置 logging.file=/location/of/catalina.out
。您可以参考 Spring 引导日志文档了解更多信息:https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html
我偶然发现了这个看似微不足道的问题,但我不知道应该从哪一方面来处理它。
我打包了一个 jar spring 引导应用程序并将其放在我的 CentOs 服务器上,并使用启动脚本将其作为 Systemd 服务启动。问题是这样的:我如何告诉嵌入式 tomcat 指向我在某处创建的他的特定 catalina.out 文件并在那里写入日志。我一直在思考两个方向。一种是以编程方式告诉嵌入式 tomcat catalina.out 来自我实例化连接器等的代码,第二种是告诉 systemd 脚本 catalina.out 所在的位置。但是我在网上找不到关于这个问题的任何信息。
编辑 我的嵌入式 tomcat 当前配置
@Bean
EmbeddedServletContainerCustomizer containerCustomizer() throws Exception {
System.out.println("TOMCAT CALLED");
return (ConfigurableEmbeddedServletContainer container) -> {
if (container instanceof TomcatEmbeddedServletContainerFactory) {
TomcatEmbeddedServletContainerFactory tomcat = (TomcatEmbeddedServletContainerFactory) container;
tomcat.addConnectorCustomizers(
(connector) -> {
connector.setPort(9595);
connector.setRedirectPort(9444);
connector.setAttribute("address", "127.0.0.1");
//connector.setPr
Http11NioProtocol proto = (Http11NioProtocol) connector.getProtocolHandler();
proto.setConnectionTimeout(20000);
System.out.println("apr available: "+AprLifecycleListener.isAprAvailable());
}
);
}
};
}
如有任何帮助,我们将不胜感激!谢谢
如 Tomcat Logging documentation 中所述,您可以将 conf/logging.properties
文件配置为在您需要的任何位置记录。对于您的情况,请查看 1catalina.org.apache.juli.FileHandler.directory
属性.
只需在 application.properties
中设置 logging.file=/location/of/catalina.out
。您可以参考 Spring 引导日志文档了解更多信息:https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html