spring - 如何在 spring 应用程序属性中获取正在运行的 tomcat 端口

标签 spring spring-boot tomcat

我需要将端口号附加到日志文件。是否有任何属性或变量可用于运行服务器端口?我尝试了 local.server.port 属性,但只有在 spring 上下文完全初始化后才会初始化。

如果无法获取端口号,是否可以在应用程序属性中获取任何 tomcat 实例级信息?

所有应用程序属性都存储在配置服务器中。

最佳答案

可以在logback xml中添加以下内容来加载spring配置属性

 <property resource="application.properties"/> 

然后可以使用简单的 spring EL 表达式获取 spring 属性,例如:

 <fileNamePattern>%d{yyyy-MM-dd}-${server.port}.log</fileNamePattern>

将文件创建为 2019-08-12-8080.log,其中 8080 是端口号。 希望对您有所帮助。

关于spring - 如何在 spring 应用程序属性中获取正在运行的 tomcat 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57456579/

相关文章:

java - 发送重置密码链接时保护用户 ID 的最佳方法是什么

rest - HP NonStop 休息服务部署

java - Spring Bean 和 Hibernate 表

java - 在Gradle中管理Spring依赖项

java - 如何检查我的交易方式是否真的支持交易?

java - 使用 Jackson 的非对称名称/属性映射,更优雅的解决方案?

java - JTA、带有atomikos的Hibernate多个XA数据源不维护SpringBoot中的事务

java - 找不到字符串字段的 validator

java - 如何使用 Spring Boot 在 mysql 中保存图像?我怎样才能取回它?我在注册时收到 400 错误

tomcat - 减少 Tomcat 错误页面中的信息泄露