完整译文请访问:http://www.coderdocument.com/docs/prometheus/v2.14/prometheus/querying/http_api.html。
当前稳定的HTTP API可以在Prometheus服务器上的/api/v1
下访问。所有非破坏性的API都将被添加到该端点下。
格式概览
API响应格式是JSON。每个成功的API请求都返回一个2xx
状态码。
到达API处理器的无效请求将返回一个JSON错误对象和以下HTTP响应代码之一:
400 Bad Request
:当参数缺失或不正确422 Unprocessable Entity
:表达式不能被执行(RFC4918)503 Service Unavailable
:查询超时或中止
如果在到达API端点之前发生错误,可能会返回其他非2xx
状态码。
如果有错误不能阻止请求执行,可能会返回一个警告数组。成功收集的所有数据都将在data
字段中返回。
JSON响应格式如下:
{
"status": "success" | "error",
"data": <data>,
// Only set if status is "error". The data field may still hold
// additional data.
"errorType": "<string>",
"error": "<string>",
// Only if there were warnings while executing the request.
// There will still be data in the data field.
"warnings": ["<string>"]
}
输入时间戳可以以RFC3339格式提供;也可以是秒为单位的Unix时间戳,可选的小数位数表示秒精度。输出时间戳总是表示为Unix时间戳(以秒为单位)。
可以重复的查询参数的名称以[]
结尾。
<series_selector>
占位符指的是Prometheus时间序列选择器,例如http_requests_total
或http_requests_total{method=~"(GET|POST)
,并且需要进行URL编码。
<duration>
占位符指的是Prometheus格式的持续时间字符串,修理工为[0-9]+[smhdwy]
。例如,5m
表示持续时间为5分钟。
<bool>
占位符指的是布尔值(字符串true
和false
)。
表达式查询
完整译文请访问:http://www.coderdocument.com/docs/prometheus/v2.14/prometheus/querying/http_api.html。