App-observability
Tilgjengelighet
Observability API er delvis implementert. To datakilder er nyttige i dag:
- en append-only, manuelt fylt event-tidslinje; og
- gjeldende VM-ressursallokering rapportert av libvirt.
Følgende er bare kontraktforhåndsvisninger:
- request analytics returnerer en tom rollup-liste fordi access-log ingestion ikke kjører;
- uptime-probe-konfigurasjon lagres, men ingen scheduler kjører HTTP-sjekkene;
- ressursprøver er tomme fordi samplern ikke kjører; og
- app log streaming er ikke implementert.
Det finnes ingen ferdig observability-dashboard. Lagret probe-konfigurasjon er ikke bevis på at et endepunkt ble sjekket.
Gjeldende REST-flate
Rutene ligger under /api/app-gateway.
| Method | Path | Hva det viser i dag |
|---|---|---|
GET | /analytics/{slug}?days=7 | Kontrakten er nåbar; rollups forventes tom. |
PUT | /probes/{slug} | Probe-konfigurasjonen ble validert og lagret. |
GET | /probes/{slug} | Lagret konfigurasjon kan leses. Runtime status er fortsatt unset. |
DELETE | /probes/{slug} | Lagret konfigurasjon ble fjernet. |
POST | /events/{slug} | En kalderlevert hendelse ble lagt til. |
GET | /events/{slug}?limit=100 | Lagrede events kan leses nyeste først. |
GET | /metrics/{slug}?vm_name={name} | Gjeldende allokering kan returneres; samples er tom. |
Probe-konfigurasjon
PUT /api/app-gateway/probes/my-app
Content-Type: application/json
{
"path": "/healthz",
"interval_s": 60,
"expected_status": 200,
"timeout_s": 5,
"enabled": true
}En read ser slik ut i dag:
{
"config": {
"path": "/healthz",
"interval_s": 60,
"expected_status": 200,
"timeout_s": 5,
"enabled": true
},
"last_run_at": null,
"last_status": null,
"last_http_status": null,
"consecutive_failures": 0
}Runtime-feltene med null er det viktige signalet: ingen sjekk har kjørt. Bruk en ekstern monitor for availability-varsler til schedulern er tilgjengelig.
Events
Events er varige poster skrevet via API-et, ikke et automatisk komplett audit trail. Deployment-, checkpoint-, domain- og walker-hooks venter fortsatt, så kallere må ikke anta at disse aktivitetene vises uten eksplisitt append.
Behandle event metadata som kalderleverte data. Ikke legg secrets der.
Ressursallokering
Metrics-ruten kan rapportere tildelte vCPU-er, minne og disker når libvirt har en matchende VM. Den rapporterer ennå ikke tidsserie eller health på applikasjonsnivå. Allokering er kapasitetskonfigurasjon, ikke bevis på at applikasjonen brukte eller overlevde den kapasiteten.
Operativ veiledning
Inntil ingestion og worker-løkker er utrullet:
- bruk en ektern HTTP-monitor for uptime;
- samle application logs med en operatørstyrt mekanisme;
- bruk libvirt eller host telemetry for faktisk utnyttelse; og
- legg ved tidsstempler og kildebevis på hendelsesposter i stedet for å stole bare på forhåndslisten med events.
Funksjonen kan presenteres som klar først etter at restart-safe ingest-, probe-, sampling- og log-stream-workers har bestått end-to-end feil- og gjenopprettingstester.