Actuator
引入依賴spring-boot-starter-actuator
,通過endpoint
來暴露HTTP或JMX來監管應用
通過http://localhost:8080/actuator
,可以查看所有endpoints,eg:
/actuator/health, /actuator/info, /actuator/metrics, /actuator/loggers
/health:健康指數檢查
通過management.endpoint.health.show-details=always
可以顯示詳細的健康信息。
實現HealthIndicator
接口,或繼承AbstractHealthIndicator
類自定義健康指標
@Component
public class CustomerHealthIndicator extends AbstractHealthIndicator {
@Override
protected void doHealthCheck(Health.Builder builder) throws Exception {
builder.up().withDetail("xxx", "xxx xxx");
}
}
/info:應用基本信息
通過META-INF/build-info.properties
獲得編譯信息,通過git.properties
獲得git信息
# INFO ENDPOINT CONFIGURATION
info:
app:
name: @project.name@
description: @project.description@
version: @project.version@
encoding: @project.build.sourceEncoding@
java:
version: @java.version@
Automatic Property Expansion:擴展maven工程的properties
授權訪問
通過HTTP認證保護Actuator Endpoints的安全:spring-boot-starter-security