Glossary · Types of monitoring

Vad är en health check-endpoint?

En endpoint för hälsokontroll är en URL, som /health eller /healthz, som en tjänst exponerar så att lastbalanserare, orkestrerare och övervakning kan fråga om den fungerar. Den svarar 200 när tjänsten är frisk och en felstatus, oftast 503, när den inte är det.

How it works and why it matters

En bra hälsokontroll testar det tjänsten behöver för att betjäna användarna: en snabb fråga mot databasen, cachen, kön. Den svarar snabbt, har inga sidoeffekter, kräver ingen inloggning eller bara en nyckel utan andra behörigheter, och returnerar en liten JSON-body som säger vilken kontroll som misslyckades.

Det finns oftast två sorter. En liveness-kontroll säger att processen körs och inte ska startas om; den hålls enkel. En readiness-kontroll säger att instansen kan ta emot trafik just nu, beroenden inräknade, så att en lastbalanserare eller Kubernetes kan styra runt den. Extern övervakning vill ha readiness-varianten.

Var försiktig med beroenden du inte styr över. Om hälsokontrollen fallerar så fort ett tredjeparts-API är långsamt kan alla instanser tas ur drift samtidigt. Rapportera sådant som försämrat i svaret, och spara statuskoden för fel som verkligen stoppar tjänsten.

Example

GET /health

HTTP/1.1 200 OK
Content-Type: application/json
Cache-Control: no-store

{"status":"ok","checks":{"database":"ok","cache":"ok"}}

En monitor kontrollerar statuskoden och att $.status är ok. En 503, en timeout eller något annat värde gör att kontrollen misslyckas.

How Uptimecheck helps

Uptimechecks API-monitorer kan kontrollera en hälsoendpoint varje minut: statuskoden (200 till 399 som standard, eller de koder du anger), upp till 10 JSON- och header-villkor som att $.status är lika med ok, ett nyckelord och upp till 20 request-headers för en nyckel. Standardtimeouten är 10 sekunder, och svar som är långsammare än din gräns skickar ett larm om långsamhet.

See API monitoring

14-day free trial · Then free on 5 monitors · No credit card

Read more in the guides

Guides 7 min read

How to Build a Health Check Endpoint (and Monitor It)

A health check endpoint tells monitors and load balancers whether your app can serve requests. What to check, how to keep it fast and safe, code for Laravel, Express and Flask, and how to monitor it.

Read

Guides 5 min read

API Monitoring Checklist: What to Check Beyond a 200 OK

An API can return 200 and still be broken. A practical checklist for API monitoring: methods, headers, request bodies, authentication, expected responses and response time thresholds.

Read

Questions

Vad ska en hälsoendpoint returnera?

200 med en liten JSON-body när tjänsten och dess kritiska beroenden fungerar, och 503 när de inte gör det. Lägg till Cache-Control: no-store så att en cache aldrig svarar i dess ställe.

Ska en health check-endpoint vara publik?

Det kan den vara, om den inte avslöjar något känsligt: inga versioner, värdnamn eller felmeddelanden. Annars skyddar du den med en token som skickas som header och ger övervakningen en egen nyckel.

Vad är skillnaden mellan liveness och readiness?

Liveness säger att processen körs; misslyckas den startas processen om. Readiness säger att instansen kan ta emot trafik nu; misslyckas den tas instansen ur rotation tills den återhämtar sig.

Downtime is obsolete.

Set up your first monitor in under a minute, or look around the live demo first.

14-day free trial · Then free on 5 monitors · No credit card