列出资源标签

更新时间:2025-02-14 09:16:30

调用ListTagResources接口列出资源标签。

前提条件

您已完成以下操作:

参数说明

def list_tag_resources(self, resource_type, resource_id, **filer_tags):

请求参数

名称

类型

是否必填

描述

示例值

名称

类型

是否必填

描述

示例值

resource_type

String

资源的类型。支持如下5种:

  • project:项目。

  • logstore:日志库。

  • dashboard:仪表盘。

  • machinegroup:机器组。

  • logtailconfig:Logtail采集配置。

project

resource_id

String

资源ID。

如果resource_typeprojectresource_idprojectName。否则resource_idprojectName#subResourceId。以日志库为例,projectName代表项目名称,#为拼接字符,logstore为日志库名称。

  • project:projectName

  • logstore:projectName#logstore

  • dashboard:projectName#dashboard

  • machinegroup:projectName#machinegroup

  • logtailconfig:projectName#logtailconfig

重要

resource_idfiler_tags应至少配置一个。

ali-test-project

filer_tags

Dictionary

用于过滤查询的标签键值对,最多设置 20 个键值对。

重要

resource_idfiler_tags应至少配置一个。

{'key1': 'value1'}

返回参数

返回参数说明,请参见ListTagResources - 列出资源标签

示例代码

from aliyun.log import LogClient
import os

# 日志服务的服务接入点
endpoint = "cn-hangzhou.log.aliyuncs.com"

# 本示例从环境变量中获取AccessKey ID和AccessKey Secret
accessKeyId = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID', '')
accessKey = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET', '')

# 初始化日志服务客户端
client = LogClient(endpoint, accessKeyId, accessKey)


def get_resource_tags():
    all_tags = set()
    for response in client.list_tag_resources(resource_type, resource_id, **filer_tags):
        all_tags.update(response.get_tags())
    return all_tags


if __name__ == '__main__':
    project_name = "proj-test"
    logstore_name = "logstore-test"

    # 获取project的标签
    resource_type = 'project'
    resource_id = ''
    filer_tags = {'proj1': 'v1'}

    tags = get_resource_tags()
    for tag in tags:
        print(f"resource_id: {tag.get_resource_id()}, Tag Key: {tag.get_tag_key()}, Tag Value: {tag.get_tag_value()}")

    # 获取logstore的标签
#    resource_type = 'logstore'
#    resource_id = project_name + '#' + logstore_name
#    filer_tags = {}

#    tags = get_resource_tags()
#    for tag in tags:
#        print(f"resource_id: {tag.get_resource_id()}, Tag Key: {tag.get_tag_key()}, Tag Value: {tag.get_tag_value()}")

示例返回结果

resource_id: proj-test, Tag Key: proj1, Tag Value: v1

Process finished with exit code 0

相关文档

  • 本页导读 (1)
  • 前提条件
  • 参数说明
  • 请求参数
  • 返回参数
  • 示例代码
  • 示例返回结果
  • 相关文档