Health indicators
Rapportér applikationens og afhængighedernes tilstand.
Health indicators er en gratis Spring Boot 4-mikrotjenester og REST-API'er-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Spring Boot 4-mikrotjenester og REST-API'er, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Spring Boot 4-mikrotjenester og REST-API'er-kurset indeholder 4 lektioner i alt.
Health-endpointet
Endepunktet /actuator/health rapporterer, om applikationen og dens afhængigheder fungerer. Belastningsfordelere og orkestratorer forespørger på det for at afgøre, om en instans bør modtage trafik.
GET /actuator/health
{ "status": "UP" }Samlet status
Den overordnede sundhedstilstand er en sammenlægning af mange sundhedsindikatorer. Hvis en kritisk indikator rapporterer DOWN, bliver den samlede status DOWN. Statusser omfatter UP, DOWN og OUT_OF_SERVICE.
Indbyggede indikatorer
Boot konfigurerer automatisk indikatorer for almindelige afhængigheder — datakilde, diskplads, Redis, RabbitMQ og andre — når den tilsvarende starter er til stede. De bidrager automatisk til den samlede status.
Visning af sundhedsdetaljer
Som standard skjules detaljer. Vis en opdeling pr. komponent med management.endpoint.health.show-details, helst kun for godkendte kaldere.
management:
endpoint:
health:
show-details: when-authorized
# or: always / neverDetaljeret output
Når detaljer er aktiveret, viser svaret hver komponents status og bidragede data, så det er let at se, hvilken afhængighed der fejler.
{
"status": "UP",
"components": {
"db": { "status": "UP", "details": { "database": "PostgreSQL" } },
"diskSpace": { "status": "UP" }
}
}En tilpasset HealthIndicator
Implementér HealthIndicator for at rapportere om en afhængighed, som Boot ikke dækker — for eksempel et downstream-API. Returnér Health.up() eller Health.down() med valgfri detaljer.
@Component
public class PaymentApiHealthIndicator implements HealthIndicator {
private final PaymentClient client;
public PaymentApiHealthIndicator(PaymentClient client) { this.client = client; }
@Override
public Health health() {
return client.ping()
? Health.up().withDetail("latencyMs", client.lastLatency()).build()
: Health.down().withDetail("reason", "ping failed").build();
}
}Navngivning af indikatorer
Komponentnavnet udledes af beanens eller klassens navn, efter suffikset HealthIndicator er fjernet. PaymentApiHealthIndicator vises som paymentApi i outputtet.
Liveness- og readiness-prober
I Kubernetes skelner du mellem liveness (er appen i live?) og readiness (kan den levere trafik?). Boot eksponerer begge som sundhedsgrupper, når prober er aktiveret.
management:
endpoint:
health:
probes:
enabled: true
# exposes /actuator/health/liveness and /readinessSundhedsgrupper
Gruppér indikatorer under en navngiven delmængde, så prober kun tager relevante kontroller i betragtning. Readiness kan omfatte databasen; liveness bør normalt ikke gøre det, så genstart af pods ved midlertidige udfald undgås.
management:
endpoint:
health:
group:
readiness:
include: db,paymentApiTilpasning af status til HTTP-koder
Actuator knytter sundhedsstatusser til HTTP-koder — UP til 200 og DOWN til 503 som standard — så infrastrukturen kan reagere på svarkoden uden at fortolke brødteksten.
Design af gode sundhedstjek
Hold tjek hurtige og meningsfulde:
- Undersøg faktiske afhængigheder, ikke kun processens liveness
- Undgå tungt arbejde, som i sig selv kan forårsage fejl
- Adskil liveness fra readiness for at forhindre genstartsstorme
Hurtigt tjek
Prøv din forståelse af tilpassede indikatorer.
Opsummering
Health-endepunkter viser den operationelle status.
/actuator/healthsammenlægger mange indikatorer- Indbyggede indikatorer dækker almindelige afhængigheder
- Implementér
HealthIndicatortil tilpassede tjek - Brug
show-detailsmed omtanke; suffikset fjernes fra navnene - Aktivér liveness-/readiness-prober og grupper til Kubernetes
Lær Java med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 24
- Lektioner
- 93
Ofte stillede spørgsmål
Er lektionen “Health indicators” gratis?
Ja — hele teksten til “Health indicators” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Spring Boot 4-mikrotjenester og REST-API'er-kurset, skal du opgradere til CoddyKit PRO. Spring Boot 4-mikrotjenester og REST-API'er-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Health indicators”?
Rapportér applikationens og afhængighedernes tilstand. Du øver dig i Spring Boot 4-mikrotjenester og REST-API'er med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på Spring Boot 4-mikrotjenester og REST-API'er?
Der kræves ingen tidligere erfaring. Spring Boot 4-mikrotjenester og REST-API'er på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.
Hvor lang tid tager lektionen “Health indicators”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne Spring Boot 4-mikrotjenester og REST-API'er-lektion?
Ja. Alle Spring Boot 4-mikrotjenester og REST-API'er-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Aktivér Actuator-endpoints
- Health indicators
- Brugerdefinerede metrics med Micrometer
- Sikring af Actuator-endpoints