Spring Boot 4-mikrotjenester og REST-API'er · Lektion

Health indicators

Rapportér applikationens og afhængighedernes tilstand.

Lektion 2 af 413 trin

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 / never

Detaljeret 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 /readiness

Sundhedsgrupper

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,paymentApi

Tilpasning 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/health sammenlægger mange indikatorer
  • Indbyggede indikatorer dækker almindelige afhængigheder
  • Implementér HealthIndicator til tilpassede tjek
  • Brug show-details med omtanke; suffikset fjernes fra navnene
  • Aktivér liveness-/readiness-prober og grupper til Kubernetes
Gratis at komme i gang

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

  1. Aktivér Actuator-endpoints
  2. Health indicators
  3. Brugerdefinerede metrics med Micrometer
  4. Sikring af Actuator-endpoints
← Tilbage til Spring Boot 4-mikrotjenester og REST-API'er