跳转至

脚本开发 / 连接器对象 DFF.CONN / Prometheus

Prometheus 连接器操作对象主要提供一些操作 Prometheus 的方法。

本连接器基于 HTTP 协议连接访问 Prometheus

DFF.CONN(...) 参数如下:

参数 类型 必须 / 默认值 说明
connector_id str 必须 连接器 ID
timeout int/float 10 当前操作对象的默认 HTTP 请求超时时间,秒

.query(...)

向 Prometheus 发送 HTTP 请求,参数如下:

参数 类型 必须 / 默认值 说明
method str 必须 请求方法,如 "GET""POST";也可写为 "GET /path"
path str None 请求路径;省略时从 method 中拆分
query dict None URL 查询参数
body dict None JSON 请求体
timeout int/float None 本次请求超时时间,省略时使用操作对象的默认值
示例
1
2
3
4
5
6
result = prom.query('GET', '/api/v1/query_range', query={
  'query': 'up',
  'start': '2024-01-01T00:00:00Z',
  'end'  : '2024-01-02T00:00:00Z',
  'step' : '60s',
})

query 同时包含 startend 时,连接器会尝试将二者转换为时间,按先后顺序排序,再输出为 ISO 8601 字符串。其他参数直接传给 Prometheus HTTP API。

响应为 JSON 或 XML 时返回解析后的对象,否则返回原始字节;HTTP 状态码大于等于 400 时抛出异常。

有关 Prometheus HTTP API,请参考 Prometheus 官方文档 / Querying / HTTP API