OpenViking Server provides endpoints for monitoring system health and component status.
The /health endpoint provides a simple liveness check. It does not require authentication.
curl http://localhost:1933/health{"status": "ok"}Python SDK (Embedded / HTTP)
status = client.get_status()
print(f"Healthy: {status['is_healthy']}")
print(f"Errors: {status['errors']}")HTTP API
curl http://localhost:1933/api/v1/observer/system \
-H "X-API-Key: your-key"{
"status": "ok",
"result": {
"is_healthy": true,
"errors": [],
"components": {
"queue": {"name": "queue", "is_healthy": true, "has_errors": false},
"vikingdb": {"name": "vikingdb", "is_healthy": true, "has_errors": false},
"vlm": {"name": "vlm", "is_healthy": true, "has_errors": false}
}
}
}Check individual components:
| Endpoint | Component | Description |
|---|---|---|
GET /api/v1/observer/queue |
Queue | Processing queue status |
GET /api/v1/observer/vikingdb |
VikingDB | Vector database status |
GET /api/v1/observer/vlm |
VLM | Vision Language Model status |
Python SDK (Embedded / HTTP)
if client.is_healthy():
print("System OK")HTTP API
curl http://localhost:1933/api/v1/debug/health \
-H "X-API-Key: your-key"{"status": "ok", "result": {"healthy": true}}Every API response includes an X-Process-Time header with the server-side processing time in seconds:
curl -v http://localhost:1933/api/v1/fs/ls?uri=viking:// \
-H "X-API-Key: your-key" 2>&1 | grep X-Process-Time
# < X-Process-Time: 0.0023- Deployment - Server setup
- System API - System API reference