Skip to Content
TestingApp-observability

App-observability

Beschikbaarheid

De observability API is gedeeltelijk geïmplementeerd. Twee databronnen zijn vandaag nuttig:

  • een append-only, handmatig gevulde event-timeline; en
  • huidige VM-resourceallocatie gerapporteerd door libvirt.

Het volgende zijn alleen contractpreviews:

  • request analytics geeft een lege rollup-lijst terug omdat access-log ingestion niet draait;
  • uptime-probe configuratie blijft bewaard, maar geen scheduler voert de HTTP-checks uit;
  • resource samples zijn leeg omdat de sampler niet draait; en
  • app log streaming is niet geïmplementeerd.

Er is geen afgerond observability-dashboard. Opgeslagen probe-configuratie is geen bewijs dat een endpoint is gecontroleerd.

Huidige REST-oppervlak

De routes staan onder /api/app-gateway.

MethodPathWat het vandaag bewijst
GET/analytics/{slug}?days=7Het contract is bereikbaar; rollups wordt verwacht leeg te zijn.
PUT/probes/{slug}De probe-configuratie is gevalideerd en opgeslagen.
GET/probes/{slug}De opgeslagen configuratie is leesbaar. Runtime status blijft unset.
DELETE/probes/{slug}De opgeslagen configuratie is verwijderd.
POST/events/{slug}Een door de caller aangeleverd event is toegevoegd.
GET/events/{slug}?limit=100Opgeslagen events zijn leesbaar, nieuwste eerst.
GET/metrics/{slug}?vm_name={name}Huidige allocatie kan worden teruggegeven; samples is leeg.

Probe-configuratie

PUT /api/app-gateway/probes/my-app Content-Type: application/json { "path": "/healthz", "interval_s": 60, "expected_status": 200, "timeout_s": 5, "enabled": true }

Een read ziet er momenteel zo uit:

{ "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 }

De runtimevelden met null zijn het belangrijke signaal: er is geen check uitgevoerd. Gebruik een externe monitor voor availability-alerts totdat de scheduler beschikbaar is.

Events

Events zijn durable records die via de API worden geschreven, geen automatisch complete audit trail. Deployment-, checkpoint-, domain- en walker-hooks staan nog open, dus callers mogen niet aannemen dat die activiteiten verschijnen zonder expliciete append.

Behandel event metadata als door de caller aangeleverde data. Zet er geen secrets in.

Resourceallocatie

De metrics-route kan toegewezen vCPU’s, geheugen en disks rapporteren wanneer libvirt een passende VM levert. Er is nog geen time series of application-level health. Allocatie is capaciteitsconfiguratie, geen bewijs dat de applicatie die capaciteit heeft gebruikt of overleefd.

Operationele richtlijnen

Tot ingestion- en worker-loops zijn uitgerold:

  1. gebruik een externe HTTP-monitor voor uptime;
  2. verzamel application logs met een door de operator beheerd mechanisme;
  3. gebruik libvirt of host telemetry voor werkelijk verbruik; en
  4. voeg timestamps en bronevidence toe aan incidentrecords in plaats van alleen op de preview event-lijst te vertrouwen.

De feature mag als klaar worden gepresenteerd pas nadat restart-safe ingest-, probe-, sampling- en log-stream workers end-to-end failure- en recovery-tests hebben doorstaan.