Promatljivost aplikacija
Dostupnost
API za promatljivost djelomično je implementiran. Danas su korisna dva izvora podataka:
- append-only, ručno popunjena vremenska linija događaja; i
- trenutna alokacija resursa VM-a koju prijavljuje libvirt.
Sljedeće su samo pregledi ugovora:
- request analytics vraća prazan popis rollup jer ingestion access logova ne radi;
- konfiguracija uptime-probe se sprema, ali nijedan scheduler ne izvršava HTTP provjere;
- uzorci resursa su prazni jer sampler ne radi; i
- streamanje logova aplikacije nije implementirano.
Nema dovršene nadzorne ploče promatljivosti. Spremljena konfiguracija probe nije dokaz da je endpoint provjeren.
Trenutna REST površina
Rute leže ispod /api/app-gateway.
| Method | Path | Što to danas potvrđuje |
|---|---|---|
GET | /analytics/{slug}?days=7 | Ugovor je dostupan; očekuje se prazan rollups. |
PUT | /probes/{slug} | Konfiguracija probe je validirana i spremljena. |
GET | /probes/{slug} | Spremljenu konfiguraciju može se pročitati. Runtime status ostaje unset. |
DELETE | /probes/{slug} | Spremljena konfiguracija je uklonjena. |
POST | /events/{slug} | Događaj koji je poslao pozivatelj dodan je u zapis. |
GET | /events/{slug}?limit=100 | Spremljene događaje može se čitati od najnovijih. |
GET | /metrics/{slug}?vm_name={name} | Može se vratiti trenutna alokacija; samples je prazan. |
Konfiguracija probe
PUT /api/app-gateway/probes/my-app
Content-Type: application/json
{
"path": "/healthz",
"interval_s": 60,
"expected_status": 200,
"timeout_s": 5,
"enabled": true
}Čitanje trenutno izgleda ovako:
{
"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
}Polja runtime s vrijednošću null važan su signal: nijedna provjera nije pokrenuta. Za upozorenja o dostupnosti koristi vanjski monitor dok scheduler nije isporučen.
Događaji
Događaji su trajni zapisi zapisani preko API-ja, a ne automatski potpun audit trail. Kuke deployment, checkpoint, domain i walker još su pending, pa pozivatelji ne smiju pretpostaviti da će se te aktivnosti pojaviti bez eksplicitnog append.
Metapodatke događaja tretiraj kao podatke koje je poslao pozivatelj. U njih ne stavljaj secrets.
Alokacija resursa
Ruta metrics može prijaviti dodijeljene vCPU-e, memoriju i diskove kada libvirt učini dostupnim odgovarajući VM. Još ne prijavljuje vremenski niz niti health na razini aplikacije. Alokacija je konfiguracija kapaciteta, a ne dokaz da je aplikacija koristila ili preživjela taj kapacitet.
Operativne smjernice
Dok ingestion i worker petlje nisu implementirane:
- koristi vanjski HTTP monitor za uptime;
- prikupljaj logove aplikacije mehanizmom kojim upravlja operator;
- koristi libvirt ili telemetriju hosta za stvarno iskorištenje; i
- pridruži vremenske oznake i izvorne dokaze zapisima incidenata umjesto oslanjanja samo na pregledni popis događaja.
Funkciju možete predstaviti kao spremnu tek nakon što restart-safe workeri ingest, probe, sampling i log-stream prođu end-to-end testove kvara i oporavka.