Ir para o conteúdo

Query API

Rotas GET de consulta. Com ARGUS_AGENT_TOKEN definido elas exigem Authorization: Bearer, a mesma checagem da ingestão. /health continua aberto. O parâmetro since aceita uma duração Go (30m, 1h, 24h) ou uma janela fechada início..fim (RFC3339, no máximo 24 horas).

GET /health

{ "status": "ok" }

GET /api/v1/workloads

Último snapshot por container monitorado.

Exemplo: GET /api/v1/workloads?since=30m

[
  {
    "container": "stack-demo-api-1",
    "entity_uid": "container:stack-demo-api-1",
    "cpu_usage": 4.2,
    "memory_usage": 134217728,
    "memory_limit": 536870912,
    "updated_at": "2026-09-04T12:00:00Z"
  }
]

GET /api/v1/metrics/series

Série temporal agregada.

Exemplo: GET /api/v1/metrics/series?metric=cpu.usage&since=1h&container=stack-demo-api-1

{
  "metric_name": "cpu.usage",
  "series": [
    {
      "container": "stack-demo-api-1",
      "entity_uid": "container:stack-demo-api-1",
      "points": [
        { "ts": "2026-09-04T11:00:00Z", "value": 3.1 },
        { "ts": "2026-09-04T11:15:00Z", "value": 5.8 }
      ]
    }
  ]
}

Filtros opcionais: container, group (ID de workload group).

GET /api/v1/metrics/catalog

Lista métricas disponíveis no explorer.

GET /api/v1/metrics/http/summary

Resumo HTTP derivado de logs por serviço (service label).

GET /api/v1/logs/search

Exemplo: GET /api/v1/logs/search?since=1h&container=stack-demo-api-1&q=error&limit=50&offset=0

limit vale 50 e no máximo 200. offset vale 0. total conta todas as linhas do mesmo filtro, inclusive as que ficam fora desta janela.

{
  "entries": [
    {
      "ts": "2026-09-04T12:00:00Z",
      "level": "error",
      "message": "connection refused",
      "entity_uid": "container:stack-demo-api-1",
      "labels": { "container": "stack-demo-api-1" }
    }
  ],
  "total": 1,
  "limit": 50,
  "offset": 0
}

GET /api/v1/events

Timeline de eventos. Query: since, entity_uid, limit, offset. O corpo é o mesmo envelope da busca de logs (entries, total, limit, offset).

GET /api/v1/fleet/status

Estado operacional agregado + lista de containers. Um container que não está rodando traz disposition: intentional (saída 0 ou sinal de parada), unexpected (qualquer outra saída) ou oom.

Workload groups

Método Rota
GET /api/v1/workload-groups
GET /api/v1/workload-groups/discover
POST /api/v1/workload-groups
GET /api/v1/workload-groups/{id}
GET /api/v1/workload-groups/{id}/summary?since=1h
PUT /api/v1/workload-groups/{id}
DELETE /api/v1/workload-groups/{id}