查询端点
请求体
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
org_id | string | ✅ | 你的租户 id(登录获得)。 |
language | string | ✅ | sql 或 promql。 |
statement | string | ✅ | 查询文本。 |
time_range | object | ✅ | { "start": <微秒>, "end": <微秒> } —— Unix 纪元起微秒。 |
stream | object | — | { "name": "app", "stream_type": "logs" }。stream_type ∈ logs/metrics/traces/enrichment。 |
limit | integer | — | 行数上限。 |
响应
响应携带rows、columns、scanned_rows、took_ms、cache_hit。
发送
Accept: application/x-ndjson 可逐行流式返回结果。流式会绕过 query_result 缓存。SQL
trace_id 把错误
日志和它们的 span 连起来:
PromQL
设language: "promql" 即可对指标流运行 PromQL。instant 与 range 查询均支持(range 按
[start, end] 步进、输出 matrix)。覆盖面很广——rate 家族与全部 *_over_time、标准聚合
(含 topk / limitk)、histogram_quantile、label_replace / label_join、数学与三角、
集合运算 and / or / unless 配 on / ignoring + group_left / group_right 向量匹配、
选择器 @ / offset,以及子查询。
PromQL 支持矩阵
支持的函数、运算符、修饰符完整清单,以及已知差异(native-histogram 函数、二元
default)。事件上下文(search around)
要拉取某条事件前后各 N 条(日志上下文视图),用POST /api/v1/query/search_around,传
event_timestamp_us、stream、stream_type,以及可选的 before / after(各默认 50)。
缓存
查询经过三级缓存 ——file_meta、parquet_meta、query_result —— 外加默认启用的 parquet 磁盘缓存
(./data/cache/parquet,10 GB LRU)。响应里的 cache_hit 告诉你结果是否来自缓存。