Локальний API агента.
Демон Sentinel надає доступ до API HTTP/JSON з підтримкою версій через локальний Unix сокет /run/simaai-sentinel/api.sock. Він не прослуховує TCP-порт. API та інтерфейс командного рядка використовують один і той самий кеш і захищене сховище контрольних точок, тому сліди, створені агентом, одразу відображаються в інтерфейсі користувача та в командному рядку.
curl --unix-socket /run/simaai-sentinel/api.sock http://localhost/v1/health
Кінцеві точки
| Метод і спосіб. | Мета. |
|---|---|
GET /v1/health | Версія, актуальність, кількість зразків і показників, помилки та активний трас. |
GET /v1/cache | Повністю оновлений документ із кешованими даними в реальному часі. |
GET /v1/metrics | Визначення, одиниці вимірювання, описи та порогові значення показників. |
GET /v1/samples/latest | Останні значення показників, відсортовані за часом. |
GET /v1/traces/active | Активний слід або null. |
POST /v1/traces | Запустіть трасування з вказаною назвою. |
POST /v1/traces/stop | Зупиніть і продовжіть активне відстеження. |
GET /v1/runs | Перелічіть зведені дані про поточні та завершені запуски. |
GET /v1/runs/{name-or-id} | Відновіть збережені дані запуску та необроблені зразки. |
GET /v1/compare?runs=A,B | Порівняйте два або більше результатів; перший із них буде базовим значенням. |
Приклад запиту:
curl --unix-socket /run/simaai-sentinel/api.sock \
-H 'Content-Type: application/json' \
-d '{"name":"baseline","note":"before optimization","tags":["compiler-v1"]}' \
http://localhost/v1/traces
Зупиніть активне відстеження:
curl --unix-socket /run/simaai-sentinel/api.sock \
-X POST http://localhost/v1/traces/stop
Назви мають бути унікальними, і може бути активною лише одна траєкторія. У разі конфлікту операцій життєвого циклу повертається код HTTP 409. Невідомі запуски та маршрути повертають код HTTP 404. Неправильні запити повертають код HTTP 400. У відповідях використовується JSON null для недоступних показників.
За замовчуванням відповіді порівняння містять метадані запуску, статистику та базові дельти. Додавайте raw=1 лише тоді, коли потрібні зразки з позначкою часу.