更新时间:2022-08-12 GMT+08:00

查询特定标签的集群列表

功能介绍

使用标签过滤集群。

集群默认按照创建时间倒序,集群tag也按照创建时间倒序。

URI

  • URI格式

    POST /v1.1/{project_id}/clusters/resource_instances/action

  • 参数说明
    表1 参数说明

    参数

    是否必选

    描述

    project_id

    项目编号。获取方法,请参见获取项目ID

请求消息

表2 请求参数说明

参数

是否必选

参数类型

描述

tags

List<tag>

返回结果包含该参数中所有标签对应的资源,该参数最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。

tags_any

List<tag>

返回结果包含该参数中任意一个标签对应的资源,该参数最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。

not_tags

List<tag>

返回结果不包含该参数中所有标签对应的资源,该参数最多包含10个key,每个key下面的value最多10个, 结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。

not_tags_any

List<tag>

返回结果不包含该参数中任意一个标签对应的资源,该参数最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。

limit

String

查询记录数(action为count时无此参数)如果action为filter默认为1000,limit最多为1000,不能为负数,最小值为1

offset

String

(索引位置),从offset指定的下一条数据开始查询。查询第一页数据时,不需要传入此参数,查询后续页码数据时,将查询前一页数据时响应体中的值带入此参数(action为count时无此参数)如果action为filter默认为0,必须为数字,不能为负数。

action

String

操作标识(仅限于filter,count):filter(过滤),count(查询总条数)

如果是filter就是分页查询,如果是count只需按照条件将总条数返回即可。

matches

List<match>

搜索字段,key为要匹配的字段,如resource_name等。value为匹配的值。此字段为固定字典值。

根据不同的字段确认是否需要模糊匹配,如resource_name默认为模糊搜索,如果value为空字符串精确匹配。

表3 tag字段数据结构说明

名称

是否必选

参数类型

说明

key

String

键。最大长度127个unicode字符。key不能为空。(搜索时不对此参数做校验)

values

List<String>

值列表。每个值最大长度255个unicode字符

如果values为空列表,则表示any_value。value之间为或的关系(当前默认只用第一个value搜索)。

表4 match字段数据结构说明

名称

是否必选

参数类型

说明

key

String

键。固定值为resource_name,表示集群的名称。

value

String

值。每个值最大长度64个unicode字符。输入集群名称。

响应消息

表5 响应参数说明

参数名

参数类型

说明

resources

Array of objects

资源详情,请参见表6

total_count

Integer

资源总数。

表6 resources参数说明

参数名

参数类型

说明

resource_detail

String

资源详情。

resource_id

String

资源ID。

resource_name

String

资源名称。

tags

objects

标签列表,请参见表7

表7 tags参数说明

参数

参数类型

描述

key

String

键。

value

String

值。

示例

  • 请求示例

    action为filter时请求体

    {
      "offset": "100", 
      "limit": "100", 
    "action": "filter", 
      "matches":[
    {
            "key": "resource_name", 
            "value": "clusterA"
           }
    ], 
       "not_tags": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ], 
      "tags": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ], 
      "tags_any": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ],
    "not_tags_any": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ]
    }

    action为count时请求体

    {
      "action": "count", 
      "not_tags": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ], 
      "tags": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        },
      {
          "key": "key2", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ], 
      "tags_any": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
      ],
    "not_tags_any": [
        {
          "key": "key1", 
          "values": [
            "value1", 
            "value2"
          ]
        }
       ],
    "matches":[
    {
            "key": "resource_name", 
            "value": "clusterA"
           }
    ]
    }
  • 响应示例

    action为filter时响应体

        { 
          "resources": [
             {
                "resource_detail": null, 
                "resource_id": "cdfs_cefs_wesas_12_dsad", 
                "resource_name": "clusterA"
             }
           ]
          "total_count": 1000
    }

    action为count时响应体

    {
           "total_count": 1000
    }

状态码

状态码如表8所示。

表8 状态码

状态码

描述

200

操作成功。