Ajouter un healthcheck Logto à l'API health #1
Labels
No labels
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/vps-health-api#1
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Contexte
Le dashboard admin de la-compagnie-maximus monitore deja Logto cote client (issue #71, PR #78). L'ajout d'un check serveur-side dans
vps-health-apidonne une source de verite cross-VPS, independante du navigateur utilisateur, et exploitable par d'autres consommateurs (defenseurs, monitoring externe).Decisions (analyse du 2026-04-21)
LOGTO_HEALTH_URL(defaulthttps://auth.lacompagniemaximus.com/oidc/.well-known/openid-configuration)/healthretourne toujours HTTP 200 — le statut de Logto est dans le body (logto.status)AbortControllerPromise.all([getCpuPercent(), getLogtoHealth()])pour eviter d'additionner les latences (CPU sample = 500ms, Logto timeout <= 3000ms)Taches
getLogtoHealth()dansindex.js: fetch natif Node 22 + AbortController(3000ms) + mesureperformance.now()getHealth()en async, paralleliser avecgetCpuPercent()viaPromise.alllogto: { status: "up"|"down", responseTimeMs: number, error?: string }dans la reponse/health.env.exampleavecLOGTO_HEALTH_URLCLAUDE.md(section Endpoints)Fichiers concernes
index.js— nouvelle fonction + handler async.env.example— nouvelle varCLAUDE.md— doc du champlogtoCriteres d'acceptation
curl -H "Authorization: Bearer $TOKEN" /health | jq .logtoretourne{status, responseTimeMs, error?}/healthreste HTTP 200 meme si Logto est down/health~= max(500ms CPU sample, 3000ms timeout Logto), pas la sommeComplexite estimee
Simple (~25 lignes, un seul fichier, Node 22 fetch natif).
References
spec-audit-logto.md(V9)