问题标签 [spring-boot-actuator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
12633 浏览

json - Spring Boot Actuator pretty print JSON

In my Spring Boot 1.3.3.RELEASE application Actuator's Health endpoint returns following JSON:

Instead of a single string I want to return pretty print JSON.

I have added following configuration into my application.yml:

but output is still returns the same single string.

How to properly configure my application in order to return pretty-print JSON ?

UPDATED

This is my application.yml

This is parent pom.xml

This is common pom.xml

This main pom.xml

Chrome screenshot:

enter image description here

0 投票
5 回答
42276 浏览

spring - 使用两个端口配置 Spring Boot

我正在尝试使用两个不同的端口在 Spring Boot 中配置一个应用程序,但我还没有。我的第一个近似值是使用两个控制器,并且我在两个控制器中定义了一个 @Bean 与 container.setPort(8080); 我的第二个近似是添加执行器依赖项并更改管理端口,但我的应用程序没有运行。“地址已在使用:绑定”,如何配置具有两个端口的应用程序?我想要一个端口用于管理员,另一个端口用于咨询我的 api。

0 投票
2 回答
1641 浏览

java - Spring Boot Actuator - 启用单个端点

HealthMvcEndpoint 中两个版本的 Spring Boot Actuator(1.2.5 和 1.3.0)的实现存在差异,isUnrestricted() 方法( && 和 || )。我明白这是为了保留这些限制

http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#production-ready-health-access-restrictions

但是现在有什么解决方案可以只启用一个端点(例如健康)不受限制的全部内容,而不暴露所有其他端点?禁用 management.security.enabled 只是使所有端点都可以在没有身份验证的情况下访问(?) - 看起来它并没有对端点敏感。

0 投票
1 回答
1386 浏览

java - 如何挂钩关闭端点,Spring Boot

我阅读了如何以正确的方式关闭 Spring Boot 应用程序?,所以我尝试使用http关闭端点来关闭我的spring boot嵌入式tomcat应用程序。

但我需要它只能由 localhost 访问,这样其他人就不会关闭我的应用程序。

我发现我可以使用management.address=127.0.0.1不允许远程管理连接。

但是,如果我需要一些端点,例如 /health/info仍然可以进行远程访问怎么办?

有没有办法挂钩关闭端点,以便我可以检查请求者的 ip?

0 投票
5 回答
23117 浏览

java - Spring Boot Actuator /health 端点不显示数据库或文件系统信息

我无法获取数据库信息或文件系统信息以显示在 /health 端点上。我只能得到:

关于我的设置和配置的详细信息: - Spring Boot 1.3.3 - 在 JBoss EAP 6.4 上运行 WAR - 数据源是一个 JNDI 资源。- Oracle 是数据库

我在 /configprops 上发现的一件事是这个,我不确定它是否相关:

我曾尝试添加“驱动程序类名称:oracle.jdbc.driver.OracleDriver”,认为它可能需要更多详细信息,但这并没有改变这种情况。

所以,是的,什么给了?我做了一个香草示例项目,它至少显示了文件系统的东西,所以不知道为什么不想在我的“真实”应用程序中显示。告诉我你伟大而明智的答案!:)

0 投票
1 回答
1242 浏览

java - Spring Boot spring.datasource.CONFIGURATION_PROPERTIES 无法序列化

我配置了一个在我的代码中工作的数据源,但我无法让它报告 Actuator /metrics 端点上的指标。

我的设置如下:

  • 春季启动 1.3.3
  • JBoss EAP 6.4 JBoss 中定义的 JNDI 数据源
  • 在 application.properties 中为 Spring Boot 配置的 JNDI 数据源
  • 甲骨文数据库

它确实出现在 /heath 上。我在 /configprops 端点上注意到以下内容,我猜这是问题所在……尽管我不确定该怎么做:

就像我说的,它在 /health 上是“快乐的”:

这是我的 application.properties,如果有帮助的话。

0 投票
3 回答
10409 浏览

spring - management.port=0时在运行时获取Spring Boot管理端口

我正在寻找有关在集成测试中将management.port属性设置为时如何获取分配给为执行器端点提供服务的嵌入式 tomcat 的端口的建议。0

我使用具有以下application.yml配置的 Spring Boot 1.3.2:

然后我的集成测试用 注释@WebIntegrationTest,将上面显示的端口设置为0

在进行完整集成测试时,应使用以下实用程序类来访问应用程序配置:

我已经知道标准端口可以通过使用来获得,local.server.port并且对于名为local.management.port. 但这似乎有不同的含义。

编辑:官方文档没有提到这样做的方法:(http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-discover-the-http-port-at -运行时

目前是否有任何未记录的方式来获得该管理端口?


解决方案编辑:

当我使用 Spock-Framework 和 Spock-Spring 来测试我的 spring-boot 应用程序时,我必须使用以下方法初始化应用程序:

不知何故,Spock-Spring 或测试初始化​​似乎会影响@Value注释的评估,从而@Value("${local.management.port}")导致

使用您的解决方案,我知道该属性存在,因此我只是直接使用弹簧Environment在测试运行时检索属性值:

0 投票
1 回答
1813 浏览

spring-boot - 在多个端口上提供 Spring Boot Actuator 端点

我们的主要应用程序在端口 8443 上management.port提供服务,我们使用在端口 8444 上提供执行器端点。

有没有办法让一个端点(健康端点)同时在 8443 和 8444 上服务,而其余端点只留在端口 8444 上?

0 投票
1 回答
1355 浏览

spring-boot - Spring Boot 执行器 + Java Melody

我在我的 spring boot 应用程序中使用执行器子项目。我在 中配置了执行器管理功能的地址和端口,application.properties将监控流量与生产流量分开。

此外,我想使用 java melody,并且我想在与执行器端点相同的连接池上提供 java melody 仪表板。所以最后 java melody 仪表板应该由 提供localhost:8081/monitoring,而不是(!)由提供localhost:8080/monitoring

我怎样才能做到这一点?

0 投票
2 回答
11539 浏览

spring - Spring Boot 执行器健康端点

我创建了一个 PostgreSQL 健康指标,如下所示:

在我的 Application.java 中,我正在为这个组件扫描这个包:

在我的 application.properties 我有以下设置:

当我点击 {url}/health 我看到:

{“状态”:“下降”}

我需要做什么才能显示自定义运行状况指示器?