跳转到主要内容
POST
/
monit
/
datasource
/
create
创建数据源
curl --request POST \
  --url 'https://api.flashcat.cloud/monit/datasource/create?app_key=' \
  --header 'Content-Type: application/json' \
  --data '
{
  "type_ident": "prometheus",
  "name": "生产 Prometheus",
  "note": "生产环境 Prometheus",
  "address": "http://prometheus.example.com:9090",
  "edge_cluster_name": "default",
  "payload": {
    "prometheus": {
      "basic_auth_enabled": false
    }
  }
}
'
{
  "request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
  "data": {
    "id": 10,
    "type_ident": "prometheus",
    "name": "生产 Prometheus",
    "enabled": true,
    "edge_cluster_name": "default",
    "updated_at": 1712000000
  }
}

限制说明

项目说明
速率限制每个账户 1,000 次/分钟50 次/秒
权限要求数据源管理monit

使用说明

  • type_ident 必须为以下之一:prometheuslokimysqloraclepostgresclickhouseelasticsearchslsvictorialogs
  • edge_cluster_name 指定使用该数据源进行规则评估的 Monitors Edge 集群。
  • 对于 elasticsearchpayload.elasticsearch.deployment 须设为 cloudself-managed
  • 每次调用都会记录到账户审计日志,请不要把敏感信息放在请求字段中。

授权

app_key
string
query
必填

在 Flashduty 控制台 账户 → APP Key 中签发的 app_key。调用任何公开 API 时都必须携带。它等同于所属账户的身份凭证,请妥善保管。

请求体

application/json

创建或更新数据源的请求体。id 仅在更新时必填。address 除 Elasticsearch deployment=cloud 外均为必填。

type_ident
string
必填

数据源类型标识,可选值:prometheuslokimysqloraclepostgresclickhouseelasticsearchslsvictorialogs

name
string
必填

数据源显示名称。

payload
object
必填

类型相关配置块,必须包含与 type_ident 匹配的键。

edge_cluster_name
string
必填

负责使用该数据源评估规则的 Monitors Edge 集群名称。

id
integer<uint64>

数据源 ID。更新时必填,创建时省略。

note
string

可选描述。

address
string

连接地址。Prometheus/Loki/VictoriaLogs 为 HTTP URL;MySQL/Oracle/Postgres/ClickHouse 为 host:port;SLS 为不含 http/https 前缀的 endpoint;Elasticsearch cloud 部署无需填写。

响应

成功

成功响应结构。2xx 响应中 request_id 标识本次调用(同时出现在 Flashcat-Request-Id 响应头中),data 为接口业务 payload。失败响应使用不同结构,参见 ErrorResponse

request_id
string
必填

本次请求的唯一 ID,也会在 Flashcat-Request-Id 响应头中返回。反馈问题时请一并附上。

示例:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
必填

单个监控数据源。