我有两个Spring Boot应用程序。我已经添加了Spring Boot Actuator。当我运行其中一个时,我可以看到diskSpace
:
{
"status": "UP",
"diskSpace": {
"status": "UP",
"total": 399055067136,
"free": 346446485504,
"threshold": 10485760
}
}
然而,在其他服务中,我只能看到:
{
"status": "UP"
}
即使我将该属性添加到第二个服务:
management:
health:
diskspace:
enabled: true
我仍然看不到diskSpace
信息。当我调试系统时,我看到收集了这些属性但没有返回到UI。可能是什么问题?
答案 0 :(得分:2)
如果您使用弹簧安全性(默认情况下为执行器端点为ON),您可以在yml文件中禁用它 -
management:
security:
enabled: false
答案 1 :(得分:1)
因为只有ADMIN才有权查看比此更多的信息
CREATE TABLE new_schema.total AS ( SELECT new_schema.operations.Id_check,new_schema.operations.ID_client, new_schema.customers.Age INNER JOIN Age ON new_schema.operations.ID_client=new_schema.customers.ID_client );
要查看所有指标,请与具有弹出安全角色ADMIN的任何用户进行身份验证。
或强>
(不太喜欢的选项) 如此
,禁用执行器端点的安全性在应用程序属性yaml文件
中{
"status": "UP"
}
答案 2 :(得分:1)
management.security.enabled
已被弃用。
您可以通过在application.properties
中添加一行来获得完整的健康详细信息:
management.endpoint.health.show-details=always
答案 3 :(得分:0)
只需在application.properties中添加一行:
management.endpoint.health.show-details = always
这使健康状况向除授权人员以外的所有用户显示详细信息。
答案 4 :(得分:-1)
Spring引导执行程序的HealthIndicator检查可用磁盘空间,并在低于可配置阈值时报告Status#DOWN状态。
因此,对于第二个应用程序,可用空间大于阈值,因此不会看到任何报告。
您可能可以在代码中调试并查看可用磁盘空间和阈值的值。
让我知道这是否有意义......