Files
inecs f8d3cbdd59 Initial commit: VMware vSphere API simulator scaffold.
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API
contracts, docs, client examples, and the unit/integration/compatibility
test suite for local client and tooling labs without a real vCenter.
2026-07-18 04:42:11 +03:00

46 lines
1.4 KiB
Markdown

**Language / Язык:** [English](observability.md) | [Русский](ru/observability.md)
# Observability
## Health
| Path | Meaning |
|---|---|
| `GET /health/live` | Process liveness — no dependency checks |
| `GET /health/ready` | Database reachable via `database.is_ready()`; HTTP 503 when not |
Example:
```bash
curl -sk https://localhost/health/live
curl -sk https://localhost/health/ready
```
Implementation: [`app/observability/health.py`](../app/observability/health.py).
## Request correlation
Incoming requests accept or generate an ID via `REQUEST_ID_HEADER`
(default `X-Request-ID`). Structured logs include correlation fields and
redact known secret patterns (session ids, passwords, ticket-like tokens).
## Metrics / tracing
There is **no** Prometheus `/metrics` scrape endpoint and **no** bundled
OpenTelemetry exporter in the current application. Architecture notes that
mention them describe target design, not shipping telemetry.
Do not confuse vSphere REST paths under `/api/vcenter/activity-history` or
the seeded appliance health/timesync endpoints with simulator process
telemetry — those handlers simulate vCenter appliance state inside
PostgreSQL, not this process's own metrics.
## Compatibility evidence
Operational compatibility reports:
- `/ui/api/compatibility?major=N`
Also available through the Web UI compatibility panel. See
[Compatibility](compatibility.md).